CascadiaPHP 2024

Метасимволы

Сила регулярных выражений состоит в том, что в шаблон можно включать подшаблоны для альтернативного сопоставления и поиска повторений. Альтернативы и повторения кодируют в шаблоне метасимволами, которые парсер интерпретирует не как самих себя, а особым образом.

В коде метасимволы записывают двумя способами: одни парсер распознаёт за пределами квадратных скобок, другие — внутри квадратных скобок. Вне квадратных скобок распознаются следующие метасимволы:

Метасимволы вне квадратных скобок
Метасимвол Описание
\ общий экранирующий символ с несколькими назначениями
^ декларирует начало данных (или строки в многострочном режиме)
$ декларирует конец данных или до завершения строки (или окончание строки в многострочном режиме)
. соответствует любому символу, кроме перевода строки (по умолчанию)
[ начало описания символьного класса
] конец описания символьного класса
| начало ветки условного выбора
( начало подшаблона
) конец подшаблона
? расширяет смысл метасимвола (, выступает в роли квантификатора, который означает 0 или 1 вхождение, а также преобразовывает жадные квантификаторы в ленивые (смотрите раздел «Повторение»)
* квантификатор, который означает 0 или более вхождений
+ квантификатор, который означает 1 или более вхождений
{ начало количественного квантификатора
} конец количественного квантификатора
Часть шаблона в квадратных скобках называется символьным классом. В символьный класс входят только следующие метасимволы:
Метасимволы внутри квадратных скобок (символьные классы)
Метасимвол Описание
\ общий экранирующий символ
^ означает отрицание класса, допустим только в начале класса
- означает символьный интервал
Другие разделы детально описывают каждый из перечисленных метасимволов.

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top