Проверка регулярных выражений JavaScript с подсветкой на лету и объяснением простым языком
Работает в вашем браузере. Ничего из того, что вы вводите, никуда не отправляется.При проверке регулярного выражения вы видите совпадения прямо во время ввода, с подсветкой каждой группы захвата и разбором шаблона простым языком. Это гораздо быстрее, чем снова запускать скрипт, чтобы понять, почему группа 1 пуста. Работает с регулярными выражениями JavaScript, а ваш текст остаётся в браузере.
Эта страница переведена машинным способом с английского оригинала. Перевод ещё не проверен человеком, поэтому ориентируйтесь на английскую версию. Читать английский оригинал
Введите шаблон в поле Шаблон между косыми чертами и включите нужные флаги g, i, m, s, u и y.
Вставьте текст для поиска в поле Тестовый текст; каждое совпадение подсвечивается во время ввода.
Посмотрите на вкладке Совпадения каждое совпадение, его индекс и группы захвата.
Откройте Замена, введите замену, например $1 или $<name>, и скопируйте результат.
Откройте Разбор, чтобы прочитать каждую часть шаблона простым языком.
Этот тестер регулярных выражений применяет ваш шаблон к образцу текста прямо во время ввода и подсвечивает каждое совпадение. Таблица перечисляет все совпадения с их позицией и текстом, захваченным каждой нумерованной и именованной группой, а поле замены показывает результат String.replace с вашей заменой, включая ссылки $1 и $<name>.
К нему обращаются, когда правило проверки отклоняет ввод, который должно принимать, или когда поиск по логам находит слишком много. Два типичных случая: проверить, что шаблон для индийских PIN-кодов принимает 560001, но не 56001, и понять, почему .* проглотил полстроки, когда нужно было только первое значение в кавычках.
Тестер использует движок JavaScript вашего браузера, поэтому флаги g, i, m, s, u и y ведут себя точно так же, как в вашем коде на Node.js или во фронтенде. Другие диалекты, такие как PCRE, Python и Java, местами отличаются (сверхжадные квантификаторы, встроенные флаги), поэтому проверяйте их в их собственном языке. Ваш шаблон и текст никогда не покидают устройство.
Панель разбора делит шаблон на части и описывает их простым языком: классы символов, квантификаторы, якоря, группы, альтернативы, экранированные последовательности и проверки (lookarounds). Она также предупреждает, когда группа повторяет то, что уже повторяется, например (a+)+, — это может заморозить страницу на тексте, который почти совпадает. Поиск выполняется в фоновом воркере с ограничением времени, поэтому такой шаблон останавливается с сообщением, а не блокирует браузер. Похожие инструменты: Diff Checker, URL Encoder.
Да. Регистрации нет, и количество проверяемых шаблонов не ограничено. Страница существует за счёт небольшого числа объявлений, которые показываются вне инструмента, но никогда внутри него.
JavaScript, через собственный движок RegExp вашего браузера. Результаты совпадают с тем, что вы получите в Node.js, Deno и коде фронтенда. Регулярные выражения PCRE, Python и Java отличаются некоторыми возможностями, например сверхжадными квантификаторами и встроенными флагами, поэтому проверяйте их в их собственном языке.
Заключите часть шаблона в скобки, например (\d{4}), или дайте ей имя: (?<year>\d{4}). Таблица совпадений показывает для каждого совпадения все нумерованные и именованные группы, а пустую ячейку — если группа не участвовала.
Шаблон работал с вашим текстом дольше лимита времени — обычно из-за катастрофического возврата (catastrophic backtracking): повторяемой группы, внутри которой есть ещё одно повторение, например (a+)+ или (\w+\s?)*. Сделайте внутреннюю часть конкретнее или уберите одно из повторений.
Введите замену в поле Замена. Используйте $1, $2 для нумерованных групп, $<name> для именованных групп и $& для всего совпадения. Включите флаг g, чтобы заменить все совпадения, а не только первое.
Нет. Шаблон выполняется в фоновом воркере внутри вашего браузера. Ничего из введённого не отправляется на сервер, поэтому можно спокойно проверять логи или данные с персональной информацией.
Всё ещё не получается? Задайте вопрос об инструменте «Тестер регулярных выражений» и ответить может любой, кто знает. Учётная запись не нужна.