Ruby - предопределенные переменные
Предопределенные переменные Ruby влияют на поведение всей программы, поэтому их использование в библиотеках не рекомендуется.
Доступ к значениям в большинстве предопределенных переменных можно получить альтернативными способами.
В следующей таблице перечислены все предопределенные переменные Ruby.
Sr. No. | Имя и описание переменной |
---|---|
1 | $! Последний возникший объект исключения. К объекту исключения также можно получить доступ, используя => в предложении rescue . |
2 | $@ Трассировка стека для последнего возникшего исключения. Информация об обратной трассировке стека может быть получена методом Exception # backtrace последнего исключения. |
3 | $/ Разделитель входной записи (по умолчанию новая строка). get, readline и т. д. принимают разделитель входной записи в качестве необязательного аргумента. |
4 | $\ Разделитель выходной записи (по умолчанию ноль). |
5 | $, Разделитель вывода между аргументами для печати и Array # join (по умолчанию ноль). Вы можете явно указать разделитель для Array # join. |
6 | $; Разделитель по умолчанию для разделения (по умолчанию ноль). Вы можете явно указать разделитель для String # split. |
7 | $. Номер последней строки, прочитанной из текущего входного файла. Эквивалент ARGF.lineno. |
8 | $< Синоним ARGF. |
9 | $> Синоним слова $ defout. |
10 | $0 Имя текущей исполняемой программы Ruby. |
11 | $$ Идентификатор процесса текущей исполняемой программы Ruby. |
12 | $? Статус выхода последнего процесса прекращен. |
13 | $: Синоним для $ LOAD_PATH. |
14 | $DEBUG Истинно, если указан параметр командной строки -d или --debug. |
15 | $defout Целевой вывод для print и printf ( по умолчанию $ stdout ). |
16 | $F Переменная, которая получает вывод от split, если указан -a. Эта переменная устанавливается, если параметр командной строки -a указан вместе с параметром -p или -n. |
17 | $FILENAME Имя файла, который в данный момент читается из ARGF. Эквивалентно ARGF.filename. |
18 | $LOAD_PATH Массив, содержащий каталоги для поиска при загрузке файлов с помощью методов load и require. |
19 | $SAFE Уровень безопасности 0 → Никакие проверки не выполняются с внешними (испорченными) данными. (по умолчанию) 1 → Запрещены потенциально опасные операции с испорченными данными. 2 → Запрещены потенциально опасные операции с процессами и файлами. 3 → Все вновь созданные объекты считаются испорченными. 4 → Изменение глобальных данных запрещено. |
20 | $stdin Стандартный ввод (по умолчанию STDIN). |
21 год | $stdout Стандартный вывод (по умолчанию STDOUT). |
22 | $stderr Стандартная ошибка (по умолчанию STDERR). |
23 | $VERBOSE Истинно, если указан параметр командной строки -v, -w или --verbose. |
24 | $- x Значение опции интерпретатора -x (x = 0, a, d, F, i, K, l, p, v). Эти варианты перечислены ниже |
25 | $-0 Значение параметра интерпретатора -x и псевдоним $ /. |
26 | $-a Значение опции интерпретатора -x и истина, если установлена опция -a. Только для чтения. |
27 | $-d Значение параметра интерпретатора -x и псевдоним $ DEBUG |
28 | $-F Значение опции интерпретатора -x и псевдоним $ ;. |
29 | $-i Значение опции интерпретатора -x и в режиме редактирования на месте содержит расширение, в противном случае - nil. Можно включить или отключить режим редактирования на месте. |
30 | $-I Значение опции интерпретатора -x и псевдоним $ :. |
31 год | $-l Значение опции интерпретатора -x и истина, если установлена опция -l. Только для чтения. |
32 | $-p Значение опции интерпретатора -x и истина, если установлена опция -p. Только для чтения. |
33 | $_ Локальная переменная, последняя строка, прочитанная, получает или читает строку в текущей области. |
34 | $~ Локальная переменная MatchData, относящаяся к последнему совпадению. Метод Regex # match возвращает информацию о последнем совпадении. |
35 год | $ n ($1, $2, $3...) Строка, совпадающая в n-й группе последнего совпадения с шаблоном. Эквивалентен m [n], где m - объект MatchData . |
36 | $& Строка соответствует последнему совпадению с шаблоном. Эквивалентен m [0], где m - объект MatchData . |
37 | $` Строка, предшествующая совпадению в последнем совпадении с шаблоном. Эквивалентен m.pre_match, где m - объект MatchData . |
38 | $' Строка, следующая за совпадением в последнем совпадении с шаблоном. Эквивалентен m.post_match, где m - объект MatchData. |
39 | $+ Строка, соответствующая последней успешно сопоставленной группе в последнем сопоставлении с шаблоном. |