Тестер регулярных выражений 🔒 Ваши данные не покидают браузер.

Тестируйте шаблоны с живой подсветкой. Защита от зависания через Web Worker.

//g
#СовпадениеПозицияГруппы

Используйте $1, $2 для групп захвата и $<name> для именованных групп.

    Об этом инструменте

    Тестер выполняет шаблон тем же движком JavaScript, что и ваш код — совпадения здесь совпадут в Node.js и любом браузере. Подсветка при вводе, нумерованные и именованные группы захвата для каждого совпадения.

    Шаблоны выполняются в Web Worker с остановкой через 2 секунды — катастрофический бэктрекинг вроде (a+)+$ не заморозит вкладку. Нужна библиотека шаблонов и шпаргалка? Посетите regexcheck.com.

    Частые вопросы

    Почему мой шаблон ведёт себя иначе без флага "g"?

    Без "g" движок регулярных выражений JavaScript останавливается после первого совпадения. Тестер по умолчанию включает "g", чтобы таблица и подсветка показывали все совпадения в тексте — отключите его, чтобы увидеть поведение шаблона с одним совпадением.

    Что произойдёт, если я напишу шаблон, вызывающий зависание — катастрофический откат?

    Он выполняется в отдельном Web Worker с таймаутом. Если сопоставление не завершается быстро, тестер останавливает worker и показывает ошибку вместо зависания страницы.

    Как ссылаться на группы захвата в тексте замены?

    Используйте $1, $2 и так далее для пронумерованных групп в порядке появления, или $<name> для именованной группы вроде (?<year>\d{4}). Вкладка «Замена» показывает превью подставленного текста в реальном времени по мере ввода.

    Что на самом деле делает вкладка «Разбор»?

    Она разбивает ваш шаблон на отдельные токены — якоря, квантификаторы, группы, классы символов и так далее — и объясняет, чему соответствует каждый из них. Это полезно для понимания шаблона, написанного кем-то другим, или для отладки собственного.

    Отправляются ли мой тестовый текст или шаблон на сервер?

    Нет. Сопоставление выполняется локально в Web Worker внутри вашего браузера — введённые вами шаблон и текст никогда никуда не отправляются.