Регулярные выражения - это то, что все время забывается из-за не слишком частого использования. Поэтому решил сделать для себя шпаргалку.
Управляющие символы (., ?, *, +, {}, [], |, $, ^):
Символ | Описание | Пример | Результат |
---|---|---|---|
. | Заменяет один произвольный символ | a.c | aac, abc ... |
^ | Отрицание | [^0-9] | Все кроме цифр. (Ставится внутри скобок) |
^ | Начало строки | ^a | Все строки, которые начинаются с буквы a (Ставится в начале строки) |
| | Альтернативный оператор | a|b|c или [abc] | Строка содержит либо "a" либо "b" либо "c". |
* | НОЛЬ или более символов | [a-z]* | Подряд может идти сколь угодно букв |
+ | ОДНО или более повторений | [a-z]+ | Должна быть минимум одна буква |
? | Ноль или одно повторение | 0?7 | 7, 07 |
{n,k} | [a-z]{1,3} | Подряд может идти от одного до трех букв | |
{n} | [a-z]{n}[0-9]{k} | Сначала в строке идут n символов, потом k цифр | |
{n,} | [a-z]{0,} | Символ может встречаться n и более раз. Тоже самое [a-z]* | |
$ | Конец строки | zz$ | Все строки, которые заканчиваются строкой "zz" |
() | Сохранение результата | [a-z]{0,} | Символ может встречаться n и более раз. Тоже самое [a-z]* |
/s | Пробел, табуляция, новая строка | ||
/S | Все, что не совпадает с /s | ||
/w | Слово | ||
/W | Все, что не совпадает с /w | ||
/d | Цифры | ||
/D | Все, что не совпадает с /d |
Примеры:
"\\[text\\]" - Поиск строки "[text]" (с управляющим символом).
"/^[a-zA-Z0-9]+$/" - Имя пользователя состоит из букв и цифр.
Полезный модификатор /s (в конце регулярного выражения) - если данный модификатор используется, метасимвол "точка" в шаблоне соответствует всем символам, включая перевод строк. Без него - всем, за исключением переводов строк.
Если я Вам помог, то меня можно поблагодарить.