Сводка результатов
Сводка результатов
Изложенное в данном разделе можно суммировать в виде набора правил, которыми следует руководствоваться при работе с регулярными выражениями.
В заключение раздела приведем в табл. 10.1 и 10.2 сводку метасимволов и метапоследовательностей, рассмотренных в данной главе.
Таблица 10.1. Символы, имеющие специальное значение у в регулярных выражениях Perl
| Метасимвол | Интерпретация | ||
| \ | Отменяет (экранирует) специальное значение следующего за ним метасимвола | ||
| - | Любой одиночный символ, кроме символа новой строки | ||
| Любой одиночный символ, включая символ новой строки, если в операции сопоставления с образцом задан флаг s | |||
| л | Обозначает начало строки, если является первым символом образца | ||
| $ | Обозначает конец строки, если является последним символом образца | ||
| I | Разделяет альтернативные варианты | ||
| [...] | Любой одиночный символ из тех, которые перечислены в квадратных скобках. Пара символов, разделенных знаком минус, задает диапазон символов. Например, [A-Za-z] задает все прописные и строчные буквы английского алфавита. Если первым символом в скобках является символ " ^ ", то вся конструкция обозначает любой символ, не перечисленный в скобках. Внутри скобок символы ".", "*", "[" и "\" теряют свое специальное значение | ||
| (...) | Группирование элементов образца в один элемент | ||
| * | Нуль и более повторений регулярного выражения, стоящего непосредственно перед * | ||
| + | Одно или более повторений регулярного выражения, стоящего непосредственно перед + | ||
| 9 | Одно или ни одного повторения регулярного выражения, стоящего непосредственно перед ? | ||
| { n, m } | Минимальное n и максимальное m число повторений регулярного выражения, стоящего перед {n, m). Конструкция {n} означает ровно n повторений, (m } — минимум n повторений | ||
| \0nn | Символ, восьмеричный код которого равен nn | ||
| \а | При выводе производит звуковой сигнал | ||
| \А | Обозначает начало строки | ||
| \b | Обозначает границы слова. | ||
| | Под словом понимается последовательность символов из класса \w (см. ниже). Граница слова определяется как точка между символами из класса \w и символами из класса \w (см. ниже) | ||
| \В | Обозначает не-границы слова | ||
| \сп | Управляющий символ, который генерируется при нажатии комбинации клавиш <Ctrl>+<N> | ||
| \d | Любой цифровой символ, то же, что и [0-9] | ||
| \D | Любой нецифровой символ, то же, что и [ л О-9] | ||
| \е | Символ Esc, ASCII 27 | ||
| \Е | Ограничитель последовательностей \L, \u, \Q | ||
| \f | Символ перевода страницы, ASCI1 1 2 | ||
| \G | Обозначает точку, в которой закончился предыдущий поиск m/ /g | ||
| \1 | Преобразует следующий символ регулярного выражения к нижнему регистру |
Таблица 10.2. Метапоследовательности в регулярных выражениях Perl
|
Метапоследовательность |
Значение |
|
\L |
Преобразует все последующие символы в регулярном выражении к нижнему регистру до тех пор, пока не встретится последовательность \Е |
|
\n |
Символ новой строки, ASCII 10 |
|
\Q |
Эквивалентно экранированию всех последующих метасимволов в регулярном выражении при помощи символа "\" до тех пор, пока не встретится последовательность \Е |
|
\r |
Символ "возврат каретки", ASCII 1 3 |
|
\s |
Класс пробельных символов: пробел (space), символ табуляции (tab), возврат каретки (carriage return), символ перевода строки (line feed) и символ перевода страницы {form feed); эквивалентное \t,\r,\n, \f] |
|
\S |
Класс непробельных символов |
|
\t |
Символ табуляции, ASCII 9 |
|
\u |
Преобразует следующий символ к верхнему регистру |
|
\U |
Преобразует все последующие символы в регулярном выражении к верхнему регистру до тех пор, пока не встретится последовательность \Е |
|
\v |
Символ вертикальной табуляции, ASCII i 1 |
|
\w |
Любая буква, цифра или символ подчеркивания |
|
\W |
Любой символ, не являющийся буквой, цифрой или символом подчеркивания |
|
\xnn |
Символ, шестнадцатеричный код которого равен пп |
|
\z |
Обозначает конец строки |