Тестер регулярных выражений

Тестировать и проверять регулярные выражения

Регулярное выражение
//
Тестовый текст0 совпадений
Замена (Необязательно)

Результаты совпадений

Введите шаблон regex для начала поиска

Общие шаблоны

Справочник синтаксиса

.Any character
\dDigit
\wWord char
\sWhitespace
^Start
$End
*0+ times
+1+ times
?0 or 1
{n}n times
[abc]Char set
()Capture group

Функции

Профессиональный инструмент для тестирования регулярных выражений

Подсветка в реальном времени

Подсветка в реальном времени совпадающего содержимого, визуальное отображение результатов совпадений

Поддержка групп захвата

Отображение содержимого групп захвата для каждого совпадения, удобно для отладки сложных regex

Функция замены

Поддерживает операции замены, может использовать $1, $2 для ссылки на группы захвата

Переключение флагов

Одним щелчком переключение флагов g/i/m/s/u, гибкое управление поведением сопоставления

Общие шаблоны

Встроенные общие шаблоны regex для электронной почты, телефона, URL и т.д.

Конфиденциальность и безопасность

Вся обработка выполняется локально в браузере, тестовое содержимое никогда не загружается

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

Общие вопросы о регулярных выражениях

Что делают флаги в регулярных выражениях?
g (global): Глобальное сопоставление, найти все совпадения вместо только первого. i (case-insensitive): Игнорировать регистр. m (multiline): Многострочный режим, ^ и $ соответствуют началу и концу каждой строки. s (dotAll): Заставить . соответствовать любому символу, включая переносы строк. u (unicode): Включить режим Unicode, правильно обрабатывать символы Unicode.
Что такое группы захвата? Как их использовать?
Части, заключенные в скобки (), захватываются и могут быть ссылаться в замене, используя $1, $2 и т.д. Например: regex (\d+)-(\d+) при сопоставлении "2023-12" имеет $1 как "2023" и $2 как "12". Замена на $2/$1 дает "12/2023".
В чем разница между жадным и нежадным режимом?
Жадный режим (по умолчанию): Сопоставить как можно больше символов. Например, a.*b соответствует "axxbxxb" в "axxbxxb". Нежадный режим: Добавьте ? после квантификатора, чтобы сопоставить как можно меньше. Например, a.*?b соответствует "axxb" в "axxbxxb".
Как сопоставить сами специальные символы?
Специальные символы, которые нужно экранировать: . * + ? ^ $ { } [ ] \ | ( ). Добавьте обратную косую черту \ перед этими символами, чтобы сопоставить сам символ. Например: чтобы сопоставить "3.14" используйте 3\.14, чтобы сопоставить "(test)" используйте \(test\)
Есть ли различия между JavaScript и другими языками для regex?
Этот инструмент использует движок regex JavaScript, совместим с большинством языков, но с тонкими различиями: • JavaScript не поддерживает некоторый синтаксис для утверждений lookbehind (новые версии поддерживают) • Не поддерживает некоторый синтаксис для именованных групп захвата • Буквы флагов могут немного отличаться (например, Python использует re.IGNORECASE). Базовый синтаксис универсален во всех языках.