Regex тестер онлайн

Тестируйте регулярные выражения. Подсветка совпадений, группы, популярные пресеты.

Использовано: раз

Как работают регулярные выражения

Регулярные выражения (regex) — мощный инструмент поиска и замены текста по шаблону. Они используются в программировании, текстовых редакторах, командной строке, валидации форм.

Основные конструкции: \d — цифра, \w — буква/цифра, \s — пробел, . — любой символ, * — 0+ повторений, + — 1+ повторений, ? — 0 или 1, [abc] — один из символов, (группа) — группа захвата.

Для кодирования данных используйте Base64. Для генерации cron-выражений — cron генератор.

Что такое регулярные выражения

Регулярные выражения (regular expressions, regex) — это язык описания шаблонов для поиска, проверки и замены текста. Идея появилась в 1950-х годах в теории формальных языков, а с 1970-х regex стали частью Unix-утилит grep, sed и awk. Сейчас они встроены практически в каждый язык программирования: JavaScript, Python, PHP, Java, Go, Rust, C#.

Regex решает задачи, которые сложно или невозможно выполнить простым поиском по подстроке. Например: найти все email-адреса в тексте, проверить формат телефонного номера, извлечь даты из лога, заменить все URL на ссылки. Редакторы кода (VS Code, Sublime Text, JetBrains) поддерживают regex в поиске и замене — это экономит часы ручной работы.

Основы синтаксиса regex

Регулярное выражение состоит из обычных символов (литералов) и метасимволов со специальным значением. Вот ключевые конструкции:

Метасимволы: . — любой символ кроме новой строки. * — 0 или более повторений предыдущего символа. + — 1 или более повторений. ? — 0 или 1 вхождение (делает элемент необязательным).

Классы символов: [abc] — один из перечисленных символов. [a-z] — диапазон. [^abc] — любой символ кроме перечисленных. \d — цифра (то же что [0-9]). \w — буква, цифра или подчёркивание. \s — пробельный символ (пробел, табуляция, перенос строки).

Якоря: ^ — начало строки. $ — конец строки. \b — граница слова. Якоря не совпадают с символами, а с позициями в тексте.

Квантификаторы: {3} — ровно 3 повторения. {2,5} — от 2 до 5. {3,} — 3 и более. По умолчанию квантификаторы «жадные» — захватывают максимум. Добавьте ? для «ленивого» режима: .*? захватит минимум.

Альтернация: cat|dog — «cat» или «dog». Скобки задают область: (cat|dog)s — «cats» или «dogs».

Популярные паттерны regex

Вот готовые шаблоны для частых задач. Вставьте их в наш тестер и проверьте на своих данных:

ЗадачаПаттернПример совпадения
Email[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}user@example.com
URLhttps?://[^\s]+https://toolru.ru/
Телефон РФ\+?7[\s-]?\(?\d{3}\)?[\s-]?\d{3}[\s-]?\d{2}[\s-]?\d{2}+7 (999) 123-45-67
IPv4\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b192.168.1.1
Дата (ДД.ММ.ГГГГ)\d{2}\.\d{2}\.\d{4}07.04.2026
HEX-цвет#[0-9a-fA-F]{3,8}#FF5733

Эти паттерны — стартовая точка. Для продакшн-валидации email или URL лучше использовать специализированные библиотеки, потому что полный regex для email по RFC 5322 занимает несколько строк.

Флаги регулярных выражений

Флаги меняют поведение regex-движка. В JavaScript они указываются после закрывающего слеша (/pattern/gi) или вторым аргументом new RegExp(pattern, 'gi'):

g (global) — искать все совпадения, а не только первое. Без этого флага regex остановится после первого матча.

i (case-insensitive) — игнорировать регистр. /hello/i совпадёт с «Hello», «HELLO», «hElLo».

m (multiline)^ и $ совпадают с началом и концом каждой строки, а не всего текста. Необходим при работе с многострочными логами и конфигами.

s (dotAll) — точка . совпадает и с символом новой строки. Без этого флага .* не пересечёт границу строки.

u (unicode) — корректная обработка Unicode. Без него \d работает только с ASCII-цифрами, а суррогатные пары обрабатываются как два отдельных символа.

Группы захвата

Круглые скобки в regex выполняют две функции: группировка и захват. Захваченные подстроки доступны по номеру или имени.

Нумерованные группы: (\d{2})\.(\d{2})\.(\d{4}) — захватит день, месяц и год из даты «07.04.2026». Группа 1 = «07», группа 2 = «04», группа 3 = «2026».

Именованные группы: (?<day>\d{2})\.(?<month>\d{2})\.(?<year>\d{4}) — то же самое, но к группам можно обращаться по имени: match.groups.year. Это делает код более читаемым.

Обратные ссылки: (\w+)\s+\1 — найдёт повторяющиеся слова («the the», «is is»). \1 ссылается на содержимое первой группы.

Не захватывающие группы: (?:cat|dog)s — группировка без захвата. Используйте когда скобки нужны только для альтернации или квантификатора, а сохранять содержимое не требуется.

Наш тестер показывает все группы в таблице под результатом. Попробуйте парсинг данных через JSON форматтер после извлечения нужных фрагментов regex.

Встроить на свой сайт

<iframe src="https://toolru.ru/regex-tester/?embed=1" width="100%" height="500" frameborder="0" title="Regex тестер"></iframe>

Часто задаваемые вопросы

Введите регулярное выражение в верхнее поле, тестовый текст — в нижнее. Совпадения подсветятся мгновенно.

g (глобальный поиск), i (без регистра), m (многострочный), s (dotAll — точка совпадает с \n), u (Unicode).

Да. Все группы (скобки) отображаются в таблице с номером группы и содержимым.

Да. В секции «Пресеты» есть готовые regex для email, телефона, URL, IP, даты и других частых задач.

Нет. Всё работает в браузере через JavaScript RegExp. Ваши данные никуда не уходят.

Похожие инструменты

Все для разработчиков →