Проверка регулярных выражений онлайн — regex JavaScript
Проверка регулярных выражений JavaScript онлайн: подсветка совпадений, группы захвата и именованные, все флаги и превью замены. Медленный поиск — стоп за 1 с.
Преобразование в браузере · Без регистрации
Шпаргалка
.- Любой символ, кроме перевода строки (с флагом s — включая его)
\d \w \s- Цифра, символ слова [A-Za-z0-9_], пробельный символ
\D \W \S- Не цифра, не символ слова, не пробельный символ
[abc] [^abc]- Один из a, b, c / любой символ, кроме a, b, c
[a-z]- Любой символ от a до z
^ $- Начало / конец ввода (каждой строки с флагом m)
\b- Граница слова
* + ?- 0 или больше, 1 или больше, 0 или 1
{2,5}- От 2 до 5 раз ({3} — ровно, {2,} — не меньше)
*? +?- Ленивые версии: как можно меньше совпадений
(abc)- Группа захвата
(?<name>abc)- Именованная группа захвата
(?:abc)- Группа без захвата
\1 \k<name>- Повтор того, что совпало с группой 1 / именованной группой
a|b- a или b
(?=a) (?!a)- За которым следует a / не следует a
(?<=a) (?<!a)- Перед которым стоит a / не стоит a
\p{L}- Любая буква любого языка (нужен флаг u или v)
Используется движок регулярных выражений JavaScript (ECMAScript) вашего браузера, поэтому результаты совпадают с кодом на JavaScript. Другие движки, например PCRE, Python или Java, отличаются в части синтаксиса. Поиск выполняется в фоновом потоке и прерывается через 1 секунду, чтобы защитить страницу от катастрофического возврата.
Как пользоваться
- Введите регулярное выражение и отметьте нужные флаги (g находит все совпадения).
- Вставьте текст для проверки; совпадения подсвечиваются и выводятся списком с индексами и группами захвата.
- Включите «Замена», чтобы посмотреть результат String.replace со ссылками $1 или $<name>.
Пример
Шаблон: (?<user>\w+)@(\w+)\.com флаги: g Текст: [email protected], [email protected] Совпадения: [email protected] (user = alice, 2 = example), [email protected] Замена на $<user> at $2 → alice at example, bob at test
Подробности и ограничения
Шаблоны выполняются встроенным в браузер движком JavaScript RegExp, поэтому ретроспективные проверки, именованные группы, свойства Unicode и флаг d работают точно так же, как в вашем коде. Флаг v появляется, только если браузер его поддерживает.
Поиск выполняется в Web Worker на вашем устройстве; ничего не загружается. Выполнение прерывается примерно через 1 секунду, и выводится не более 1000 совпадений.
FAQ
Почему регулярное выражение находит только одно совпадение?
В JavaScript регулярное выражение без флага g (global) останавливается на первом совпадении. Отметьте g, чтобы найти все совпадения, — тогда этот инструмент выведет их все.
Что такое катастрофический возврат?
Некоторые шаблоны, например (a+)+$ или (.*)*, могут работать экспоненциально долго на тексте, который почти совпадает. Этот инструмент выполняет регулярное выражение в отдельном потоке и останавливает его через 1 секунду, поэтому страница остаётся отзывчивой и вместо зависания показывает ошибку.
Будет ли проверенное здесь регулярное выражение работать в Python или PHP?
Часто, но не всегда. Этот инструмент использует движок JavaScript. В Python, PHP (PCRE) и Java отличаются возможности и синтаксис, например для именованных групп, ретроспективных проверок и флагов, поэтому перепроверяйте шаблоны, которые на них опираются.
Похожие инструменты
Справочники по форматам
Страница инструмента обновлена: