Обычный поиск ищет слова по отдельности и сам отбрасывает окончания: по запросу осенние поделки найдутся записи, где встречаются «осен…» и «подел…». Регулярное выражение — это способ описать образец текста, когда обычного поиска не хватает: например, найти все записи с четырёхзначным числом или два слова рядом друг с другом.
Чтобы включить режим, поставьте галочку Регулярные выражения под строкой поиска. Весь запрос целиком считается одним выражением — на отдельные слова он уже не разбивается и окончания не отбрасываются.
. не переходит на новую строку.
| Запись | Что означает | Пример |
|---|---|---|
. |
любой одиночный символ, кроме переноса строки | д.м — «дом», «дым», «д м» |
* |
предыдущий символ повторяется сколько угодно раз, в том числе ноль | ура* — «ур», «ура», «урааа» |
+ |
предыдущий символ повторяется один раз или больше | ура+ — «ура», «урааа», но не «ур» |
? |
предыдущий символ может быть, а может и не быть | цвето?к — «цветк» и «цветок» |
{2,5} |
повтор от 2 до 5 раз; {3} — ровно три |
\d{4} — четырёхзначное число |
[абв] |
любая из перечисленных букв | ко[тд] — «кот» и «код» |
[а-я] |
любая буква из диапазона | [а-я]{10,} — длинные слова |
[^абв] |
любой символ, кроме перечисленных | [^0-9] — всё, кроме цифр |
\d |
цифра | \d+ лист — «12 лист» |
\s |
пробел, табуляция или перенос строки | день\sзнаний |
| |
или | осень|зима — любое из двух |
( ) |
группировка | (ново)?год — «год» и «новогод» |
^ |
начало текста записи | ^Аппликация — записи, начинающиеся с этого слова |
$ |
конец текста | \.pdf$ — запись, где последним идёт pdf-файл |
\b |
граница слова — помогает искать слово целиком | \bкот\b — «кот», но не «котёнок» |
\ |
отменяет особое значение следующего символа | \.pdf — именно точка, а не любой символ |
| Запрос | Что найдёт |
|---|---|
осен(ь|и|ью) |
«осень», «осени», «осенью» — но не «осенний» |
\d{1,2} сентября |
конкретные даты: «1 сентября», «15 сентября» |
шаблон.{0,30}осен |
слова «шаблон» и «осен…», стоящие рядом (не дальше 30 символов) |
(?s)осен.*лист |
оба слова в записи, даже если между ними переносы строк |
\.pdf |
записи, где упоминается pdf-файл |
А\d формат|формат А\d |
упоминание формата листа в любом порядке слов |
(?-i)[А-Я]{5,} |
пять заглавных букв подряд — заголовки, набранные капсом |
^(?!.*шаблон).*аппликац |
«аппликац…» в записях, где нет слова «шаблон» |
Осень и осень найдут
одно и то же. Если регистр важен, начните выражение с (?-i):
(?-i)ОСЕНЬ.
ёлка и елка дадут разные
результаты. Чтобы найти оба варианта, пишите [её]лка.
осень.*зима
сработает, только если оба слова в одной строке. Чтобы искать по всей записи,
добавьте в начало (?s).
^ и $ означают начало и конец всей
записи, а не строки. Чтобы они работали на каждой строке, добавьте в начало
(?m).
шаблон(ы|ов|ам)?.
(a+)+ могут потребовать слишком много вычислений —
такой запрос будет отклонён с предупреждением. Обычно его можно упростить.
( и [ закрыты.. + * ? ( ) [ ] { } | \ в обычном тексте нужно
экранировать обратной косой чертой: например, \.pdf ищет точку,
а не любой символ.