Без завантаження, 100% локально, без облікового запису

Тестер Regex

Введіть шаблон, оберіть прапорці та протестуйте на своєму тексті. Збіги підсвічуються вбудовано. Групи захоплення перелічуються для кожного збігу. Нічого не залишає ваш браузер.

Як працює Тестер Regex

Тестувальник регулярних виразів дозволяє написати JavaScript-регулярку, вставити зразковий текст і миттєво побачити всі збіги з підсвіченням. Групи захоплення відображаються в таблиці під текстом, тож можна перевірити вміст кожної групи без запуску скриптів. Підтримувані прапорці: g (глобальний), i (без урахування регістру), m (багаторядковий), s (dotAll), u (Юнікод) та y (sticky). Нічого з введеного вами не залишає пристрій: рушій зіставлення - це JavaScript-середовище виконання, вбудоване у вкладку браузера, а не сервер.

Під капотом інструмент викликає стандартний конструктор ECMAScript RegExp із зазначеними шаблоном і прапорцями, а потім використовує ітератор string.matchAll для збору всіх об'єктів Match. Таблиця груп будується безпосередньо з цих об'єктів, тому те, що ви бачите, точно відповідає тому, що повернув би Node.js або браузер у робочому коді, без проміжного шару трансляції.

Тестер Regex: покрокова інструкція

  1. Введіть або вставте регулярний вираз у поле шаблону.
  2. Увімкніть потрібні прапорці (g, i, m, s, u, y) за допомогою прапорців вибору.
  3. Вставте текст для тестування у поле зразка.
  4. Вивчіть підсвічені збіги в тексті та таблицю груп захоплення нижче.
  5. Скоригуйте шаблон і спостерігайте, як результати оновлюються в реальному часі.

Поширені сценарії використання

  • Перевірте, що шаблон для витягування електронних адрес коректно обробляє крайні випадки, зокрема адреси з плюсом, перш ніж додавати його до конвеєра даних.
  • Налагодьте іменовану групу захоплення для розбору рядків журналу, перевіривши значення кожної групи на реальному прикладі.
  • Переконайтеся, що регулярка для URL з прапорцем u правильно обробляє доменні імена з символами Юнікоду перед додаванням до роутера.
  • Інтерактивно перевірте шаблон пошуку і заміни, щоб переконатися у відсутності небажаних жадібних збігів у великому конфігураційному файлі.

Поширені запитання

Чи надсилається введений текст на сервер?

Ні. Зіставлення виконується повністю всередині вкладки браузера за допомогою вбудованого рушія JavaScript RegExp. Ваш шаблон, прапорці та зразок тексту нікуди не передаються. Відкрийте DevTools і перегляньте вкладку Network під час введення: жодних запитів не відправляється.

Який діалект регулярних виразів використовує тестувальник?

ECMAScript (ES2022+) у реалізації вашого браузера. Це той самий діалект, що використовується в Node.js, Deno та сучасних браузерах. Функції, специфічні для PCRE, наприклад lookbehind змінної довжини або посесивні квантифікатори, не підтримуються, хоча більшість поширених шаблонів працюють однаково.

Чому я отримую помилку про недійсний регулярний вираз?

Конструктор RegExp браузера викидає SyntaxError для шаблонів, що не є дійсними регулярками ECMAScript. Поширені причини: неекранований зворотний слеш, незакрита група або екранування властивості Юнікоду (\p{...}) без прапорця u.

Що показує таблиця груп захоплення?

Для кожного знайденого збігу (з урахуванням прапорця g) таблиця показує повний збіг, а потім кожну пронумеровану або іменовану групу по порядку. Іменовані групи відображаються з іменем у заголовку стовпця. Групи, що не брали участі у збігу, відображаються порожніми.

Чи можна тестувати шаблони з lookbehind?

Так, за умови що lookbehind фіксованої або змінної довжини підтримується вашим браузером. Chrome і Firefox підтримують lookbehind змінної довжини з 2020 року. Safari додав підтримку у 2022 році. На сучасних браузерах це має працювати.

Чи працює тестувальник після відключення від мережі під час сесії?

Так. Після завантаження сторінки всі збіги обчислюються локально рушієм JavaScript браузера без залежності від мережі. Відключення від інтернету не перериває тестування.