DT Dev Tools

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

Тестируйте регулярные выражения JavaScript вживую: подсветка совпадений, таблица нумерованных и именованных групп, предпросмотр замены и пояснения к флагам.

🔒 Работает полностью в вашем браузере — ничего не загружается

Флаги

    Подсвеченные совпадения

    Совпадения и группы

    Был ли инструмент полезен? Оцените его:

    Что делает Regex Tester

    Regex Tester применяет регулярное выражение JavaScript к образцу текста по мере ввода, подсвечивает каждое совпадение чередующимися цветами и выводит каждое совпадение в таблице с его позицией и всеми группами захвата. Именованные группы, такие как (?<year>\d{4}), помечаются своими именами, а группы, не участвовавшие в совпадении, показываются как undefined, поэтому необязательные части шаблона легко отлаживать. Наведите курсор на подсвеченное совпадение, чтобы увидеть его группы.

    Добавьте замену, чтобы увидеть результат String.prototype.replace с $1, $<name>, $& и другими токенами подстановки — это идеально для рефакторинга с помощью регулярного поиска в редакторе или для написания скриптов очистки данных. Доступны все восемь флагов: global, ignore case, multiline, dotAll, unicode, unicodeSets, sticky и hasIndices, у каждого есть краткое пояснение. Инструмент полезен для проверки шаблонов разбора журналов, фрагментов валидации форм, сопоставления маршрутов и небольших задач извлечения данных до того, как выражение будет скопировано в код.

    Приватный рабочий процесс в браузере

    Вся обработка выполняется с помощью JavaScript в браузере. Инструмент не загружает на сервер ваши тексты, токены, URL-адреса, фрагменты или сгенерированные значения и не требует аккаунта. Такая модель приватности важна, потому что небольшие утилиты при устранении неполадок часто получают реальные ответы API, образцы конфигураций, журналы, данные аутентификации или примеры, похожие на данные клиентов. Локальная работа снижает риск и делает инструмент мгновенным, так как нет сетевого обмена.

    Практические советы

    Без флага g сообщается только первое совпадение — в точности как ведёт себя RegExp.exec в коде. Совпадения нулевой длины перечисляются, но не подсвечиваются, чтобы не запутывать вывод. Используйте флаг u или v, когда шаблон содержит эмодзи или классы свойств Unicode \p{…}. Поскольку источником истины здесь служит поведение RegExp в браузере, результаты соответствуют современным JavaScript и Node.js, но другие движки, такие как PCRE, Python и .NET, отличаются в деталях, например в синтаксисе lookbehind и именованных групп. Шаблоны с вложенными квантификаторами, такие как (a+)+, могут вызывать катастрофический возврат (backtracking); если страница замедляется, упростите шаблон.

    Как использовать

    1. Введите шаблон и флагиВведите регулярное выражение JavaScript или вставьте /литерал/флаги и отметьте нужные флаги.
    2. Вставьте текстДобавьте образец текста; совпадения обновляются по мере ввода.
    3. Просмотрите совпадения и заменуИзучите подсветку и таблицу групп и посмотрите предпросмотр замены.

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

    Нужно ли вводить косые черты?
    Подходит любой вариант. Введите только шаблон или вставьте полный литерал, например /\d+/gi, и флаги будут отмечены автоматически.
    Можно ли протестировать поиск и замену?
    Да. Заполните Replace with, чтобы увидеть результат String.replace с $1, $<name>, $& (всё совпадение), $` и $'.
    Какой движок и какие флаги используются?
    Движок JavaScript RegExp браузера со всеми флагами: g, i, m, s, u, v, y и d. Каждый активный флаг поясняется под флажками.
    Загружается ли образец текста?
    Нет. Тестирование выполняется локально.