Регулярные выражения

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

Techno-Co.PW