01 Обычные символы
Буквы и цифры означают сами себя: паттерн мир находит текст «мир».
02 Метасимволы
Специальные символы для обозначения типов символов:
| Символ |
Что означает |
Пример |
\d |
Любая цифра |
\d\d → 42, 07 |
\D |
НЕ цифра |
\D+ → буквы, пробелы |
\w |
Буква, цифра или _ |
\w+ → Hello_123 |
\W |
НЕ буква/цифра/_ |
\W → @, !, пробел |
\s |
Пробельный символ |
\s → пробел, таб |
\S |
НЕ пробельный |
\S+ → слово |
. |
Любой символ (кроме \n) |
A.B → AXB, A1B |
Тестер · метасимволы
Текст
Паттерн
💡 Заглавная vs строчная \d = цифра, \D = НЕ цифра. Заглавная версия — это отрицание строчной. Так же: \w / \W, \s / \S.
🎯 Практика
03 Квантификаторы
Ставится после символа — указывает, сколько раз он может повторяться:
| Квантификатор |
Значение |
Пример |
+ |
1 или больше |
\d+ → 1, 42, 12345 |
* |
0 или больше |
\d* → (пусто), 42 |
? |
0 или 1 |
\d? → (пусто) или 5 |
{n} |
Ровно n раз |
\d{3} → 123, 456 |
{n,} |
n или больше |
\d{2,} → 12, 123… |
{n,m} |
От n до m |
\d{2,4} → 12, 1234 |
Тестер · квантификаторы
Текст
Паттерн
🧠 Мнемоника + → «хочу ПЛЮС» (минимум 1) · * → «звёздочка = ноль» (может не быть) · ? → «вопрос: есть или нет?» (0 или 1)
04 Классы символов
Квадратные скобки [...] — «один символ из набора»:
| Синтаксис |
Значение |
[ABC] |
A или B или C |
[A-Z] |
Любая заглавная латинская |
[a-z] |
Любая строчная латинская |
[0-9] |
Цифра (= \d) |
[A-Za-z] |
Любая латинская буква |
[^ABC] |
НЕ A, НЕ B, НЕ C |
Тестер · классы символов
Текст
Паттерн
🎯 Практика
Задание · классы символов
Текст: A1B2C3 abc XYZ. Что найдёт?
Паттерн
05 Якоря
Якоря не ищут символы, а указывают позицию:
| Якорь |
Значение |
Пример |
^ |
Начало строки |
^Привет |
$ |
Конец строки |
мир$ |
\b |
Граница слова |
\bкот\b — но не «котик» |
Тестер · якоря и границы
Текст
Паттерн
💡 Сравни результат кот (3 совпадения) и \bкот\b (только 1!)
06 Универсальный тестер
Любой паттерн, любой текст — экспериментируйте!
Песочница · свободный режим
Текст
Паттерн
Шпаргалка модуля 2
| Категория |
Элементы |
| Типы символов |
\d цифра · \w буква/цифра · \s пробел · . любой |
| Отрицания |
\D не цифра · \W не буква · \S не пробел |
| Квантификаторы |
+ 1+ · * 0+ · ? 0/1 · {n} ровно · {n,m} диапазон |
| Классы |
[ABC] один из · [A-Z] диапазон · [^X] не X |
| Якоря |
^ начало · $ конец · \b граница слова |