Перейти к содержанию

Проверка регулярных выражений

Тестируйте регулярные выражения JavaScript локально с помощью флагов g/i/m/s/u/y, количества совпадений, захвата и именованных групп, диапазонов строк и столбцов и встроенного предварительного просмотра замены.

/

/g

0 совпадений0 групп захвата0 именованных групп

Тестовый текст

Символы

0 / 50,000

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

Введите шаблон, чтобы начать сопоставление

Текст замены

Символы

0 / 50,000

Предварительный просмотр замены

Проверка регулярных выражений

Быстрый старт

1
Введите шаблон регулярного выражения вверху, выберите флаги (g/i/m/s/u/y), вставьте тестовый текст слева — совпадения появляются справа в реальном времени.
2
Группы захвата (...) и именованные группы (?<name>...) раскрываются под каждым совпадением, показывая захваченные значения.
3
Введите шаблон замены ($1, $2, $<имя>), и «Предварительный просмотр замены» справа мгновенно отобразит результат.

Частые сценарии

Извлечение данных

используйте (\d{4}-\d{2}-\d{2}) для извлечения дат и ([\w.]+@[\w.]+) для извлечения адресов электронной почты

Проверка формата

напишите регулярное выражение, вставьте несколько примеров и быстро проверьте, точно ли шаблон соответствует целевому формату

Пакетная замена

используйте группы захвата, чтобы перестроить содержимое. Например, преобразуйте "Имя Фамилия" в "Фамилия, Имя" с помощью шаблона (\S+)\s+(\S+) и замены $2, $1

Именованные группы

используйте (?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2}) для извлечения дат, затем используйте $<year>/$<month>/$<day> для их перестроения.

Изучение regex

пробуйте разные шаблоны и наблюдайте за поведением совпадений, чтобы наглядно понять квантификаторы, якоря и классы символов

Многострочный режим

включите флаг m, чтобы ^ и $ совпадали по строкам; полезно для логов, кода и файлов конфигурации

Рекомендации по использованию

Глобальный поиск (g) включён по умолчанию; отключайте его только если вам нужно первое совпадение
В этом инструменте вводите \d, \w и \s напрямую; двойное экранирование, как в строках кода, не требуется
m заставляет ^ и $ совпадать по строкам, а s позволяет. совпадать с символами перевода строки; они решают разные задачи и при необходимости могут использоваться вместе
Отдавайте предпочтение конкретным шаблонам, а не широким.*, чтобы избежать неожиданных совпадений.
Всегда проверяйте вывод замены, прежде чем применять его где-либо еще.
В инструмент встроено обнаружение рисков производительности: он предупреждает о шаблонах, которые могут вызвать катастрофический backtracking, например о вложенных квантификаторах

Ограничения и совместимость

Этот инструмент использует механизм RegExp вашего браузера JavaScript. Он не переключается на PCRE, Python, Java, Go, рекурсивные шаблоны, условные ветки или атомарные группы.
Проверки lookbehind (?<=...) требуют Chrome 62+ / Firefox 78+ / Safari 16.4+; в JavaScript обычно нужна фиксированная длина, поэтому избегайте переменных квантификаторов вроде * или + внутри проверки
Большой текст со сложными шаблонами может вызвать катастрофический бэктрекинг. CrateX.app использует worker, предупреждение о риске, безопасный режим и защиту по тайм-ауту, но это не доказательство ReDoS.

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

Шаблон, тестовый текст и текст замены обрабатываются локально как черновики сеанса. Флаги и настройки отображения редактора остаются в настройках устройства; нет загрузки, облачной синхронизации, ссылки для обмена или удаленной истории.

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

6

Перейдите к следующему шагу с этими связанными инструментами.

Вся обработка инструментов выполняется локально в вашем браузере.