Ввести тело шаблона
Наберите (?<=a)b без разделителей /. Перед загрузкой примера видны перезаписываемые поля; после применения доступна одна отмена.
- Пустой шаблон проверяется только по явной команде.
Regex и сопоставление шаблонов
Выберите реализованный движок, введите шаблон и текст, затем запустите локальную проверку.
Введите только тело шаблона без разделителей /. RE2 всегда использует Unicode внутри.
Введите данные или запустите тест.
Шаблон и текст обрабатываются локально в Worker браузера и не загружаются на сервер.
Введите данные или запустите тест.
Здесь запускаются PCRE2 и RE2. Другие языки указаны для справки.
| Цель | Выполнение | Просмотр назад | Обратная ссылка | Граница |
|---|---|---|---|---|
| PCRE2 | Работает | Да | Да | PCRE2 WASM; обёртка PHP отдельно. |
| RE2 | Работает | Нет | Нет | RE2 WASM; не среда Go/Rust. |
| PHP / PCRE2 | Только ядро PCRE2 | Да | Да | PHP preg_* добавляет разделители и возвраты. |
| Java | Только справка | Да | Да | Java здесь не запускается. |
| Go | Только справка | Нет | Нет | Go regexp — другая реализация. |
| Rust | Только справка | Нет | Нет | Rust regex — другая реализация. |
| .NET | Только справка | Да | Да | .NET здесь не запускается. |
Если шаблон из PHP переносится в Go, успешная подсветка JavaScript ещё не доказывает совместимость. Сравнение движков регулярных выражений показывает реальную компиляцию двух библиотек.
Обычный тестер регулярных выражений может выполнять JavaScript, хотя нужны PCRE2 regex или регулярные выражения Go. Регулярные выражения Java требуют отдельной среды; матрица отличает справку от теста.
Один текст показывает реальное различие компиляции.
Сравнение движков регулярных выражений не подменяет исполнение переименованным JavaScript. Просмотр назад работает в PCRE2, а RE2 возвращает ошибку.
При смене движка, шаблона, текста или параметров копирование и загрузка отключаются до нового запуска.
Наберите (?<=a)b без разделителей /. Перед загрузкой примера видны перезаписываемые поля; после применения доступна одна отмена.
Изначально выбран PCRE2; RE2 работает как отдельный WASM-модуль. i и m выключены.
Индексы начинаются с нуля, измеряются в единицах UTF-16, конец не включён. На экране добавляется по 50 строк, а JSON содержит все допустимые результаты.
PCRE2 принимает просмотр назад и обратные ссылки; RE2 их отвергает без подмены движка.
Показаны номерные и именованные группы. Индексы RE2 в кодовых точках переводятся в UTF-16 для подсветки после emoji.
Worker можно остановить, через две секунды он завершается. Превышение размера или числа совпадений отменяет результат.
Сравнение движков регулярных выражений по умолчанию использует PCRE2. PHP основан на нём, но функции preg_* здесь полностью не имитируются.
JavaScript допускает конструкции, которые RE2 отвергает, например просмотр назад. Для Go проверьте итог также в пакете regexp.
Нет. RE2 выдаёт ошибку компиляции, и страница показывает её без подмены движка.
Не всегда. Правила Unicode, флаги и группы зависят от библиотеки; проверяйте в целевом языке.
Локально выполняются только PCRE2 и RE2. Java и .NET указаны в справочной матрице.
Остались вопросы?
Загрузите пример различия и проверьте один текст сначала в PCRE2, затем в RE2.
Шаблон и текст остаются в браузере и не отправляются автоматически.