Регулярные выражения
Разделы:
Символьные классы
\c ## Управляющий символ
\s ## Пробел
\S ## Не пробел
\d ## Цифра
\D ## Не цифра
\w ## Слово
\W ## Не слово
\xhh ## Шестнадцатиричный символ hh
\Oxxx ## Восьмиричный символ xxx
Якоря
^ ## Начало строки
\A ## Начало текста
$ ## Конец строки
\Z ## Конец текста
\b ## Граница слова
\B ## Не граница слова
\< ## Начало слова
\> ## Конец слова
Кванторы
* ## 0 или больше
*? ## 0 или больше, нежадный
+ ## 1 или больше
+? ## 1 или больше, нежадный
? ## 0 или 1
?? ## 0 или 1, нежадный
{3} ## Ровно 3
{3,} ## 3 или больше
{3,5} ## 3, 4 или 5
{3,5}? ## 3, 4 или 5, нежадный
Утверждения
?= ## Вперед смотрящее
?! ## Отрицательное вперед смотрящее
?<= ## Назад смотрящее
?!= или ? ## Отрицательное назад смотрящее
?> ## Однократное подвыражение
?() ## Условие [если, то]
?()| ## Условие [если, то, а иначе]
?# ## Комментарий
Специальные символы
\ ## Экранирующий символ
\n ## Новая строка
\r ## Возврат каретки
\t ## Табуляция
\v ## Вертикальная табуляция
\f ## Новая страница
\a ## Звуковой сигнал
[\b] ## Возврат на один символ
\e ## Escape-символ
\N{name} ## Именованый символ
Диапазоны
. ## Любой символ, кроме переноса строки (\n)
(a|b) ## a или b
(...) ## Группа
(?:...) ## Пассивная группа
[abc] ## Диапазон (a или b или c)
[^abc] ## Не a, не b и не c
[a-q] ## Буква между a и q
[A-Q] ## Буква в верхнем регистре между A и Q
[0-7] ## Цифра между 0 и 7
\n n-ая ## группа/подшаблон
Модификаторы шаблонов
g ## Глобальный поиск
i ## Регистронезависимый шаблон
m ## Многострочный текст
s ## Считать текст одной строкой
x ## Разрешить комментарии и пробелы в шаблоне
e ## Выполнение подстановки
U ## Нежадный шаблон
Мета-символы
## экранируются
^
[
.
$
{
*
(
\
+
)
|
?
<
>
Символьные классы POSIX
[:upper:] ## Буквы в верхнем регистре
[:lower:] ## Буквы в нижнем регистре
[:alpha:] ## Все буквы
[:alnum:] ## Буквы и цифры
[:digit:] ## Цифры
[:xdigit:] ## Шестнадцатиричные цифры
[:punct:] ## Пунктуация
[:blank:] ## Пробел и табуляция
[:space:] ## Пустые символы
[:cntrl:] ## Управляющие символы
[:graph:] ## Печатные символы
[:print:] ## Печатные символы и пробелы
[:word:] ## Буквы, цифры и подчеркивание
Подстановка строк
$n ## n-ая непассивная группа
$2 ## «xyz» в /^(abc(xyz))$/
$1 ## «xyz» в /^(?:abc)(xyz)$/
$` ## Перед найденной строкой
$' ## После найденной строки
$+ ## Последняя найденная строка
$& ## Найденная строка целиком
$_ ## Исходный текст целиком
$$ ## Символ «$»