Сразу после регулярного выражения можно поместить однобуквенный модификатор. В таблице 3.2 приведены наиболее часто употребляемые модификаторы.
Таблица 3.2. Модификаторы регулярных выражений
Модификатор | Назначение |
---|---|
I |
Игнорировать регистр |
O |
Выполнять подстановку выражения только один раз |
M |
Многострочный режим (точка сопоставляется с символом новой строки) |
X |
Обобщенное регулярное выражение (допускаются пробелы и комментарии) |
Дополнительные примеры будут рассмотрены в главе 4. Чтобы завершить введение в регулярные выражение, в таблице 3.3 мы приводим наиболее употребительные символы и обозначения.
Таблица 3.3. Общеупотребительные обозначения в регулярных выражениях
Обозначение | Пояснение |
---|---|
^ |
Начало строки текста (line) или строки символов (string) |
$ |
Конец строки текста или строки символов |
. |
Любой символ, кроме символа новой строки (если не установлен многострочный режим) |
\w |
Символ - часть слова (цифра, буква или знак подчеркивания) |
\W |
Символ, не являющийся частью слова |
\s |
Пропуск (пробел, знак табуляции, символ новой строки и т.д.) |
\S |
Символ, не являющийся пропуском |
\d |
Цифра (то же, что [0-9]) |
\D |
Не цифра |
\A |
Начало строки символов (string) |
\Z |
Конец строки символов или позиция перед конечным символом новой строки |
\z |
Конец строки символов (string) |
\b |
Граница слова (только вне квадратных скобок [ ]) |
\B |
Не граница слова |
\b |
Забой (только внутри квадратных скобок [ ]) |
[] |
Произвольный набор символов |
* |
0 или более повторений предыдущего подвыражения |
*? |
0 или более повторений предыдущего подвыражения (нежадный алгоритм) |
+ |
1 или более повторений предыдущего подвыражения |
+? |
1 или более повторений предыдущего подвыражения (нежадный алгоритм) |
{m, n} |
От m до n вхождений предыдущего подвыражения |
{m, n}? |
От m до n вхождений предыдущего подвыражения (нежадный алгоритм) |
? |
0 или 1 повторений предыдущего подвыражения |
| |
Альтернативы |
(?= ) |
Позитивное заглядывание вперед |
(?! ) |
Негативное заглядывание вперед |
() |
Группировка подвыражений |
(?> ) |
Вложенное подвыражение |
(?: ) |
Несохраняющая группировка подвыражений |
(?imx-imx) |
Включить/выключить режимы, начиная с этого места |
(?imx-imx: expr) |
Включить/выключить режимы для этого выражения |
(?# ) |
Комментарий |