Тестер регулярных выражений
Тестировать и проверять регулярные выражения
Регулярное выражение
//
Тестовый текст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). Базовый синтаксис универсален во всех языках.