Призначення та можливості інструменту
«Тестер регулярних виразів (Regex)» — це зручний онлайн-інструмент, який дозволяє тестувати регулярні вирази JavaScript на прикладах тексту безпосередньо у вашому веб-браузері. Він миттєво підсвічує кожен збіг та групу захоплення, допомагаючи наочно побачити, як саме ваш регулярний вираз поводиться з різними вхідними даними.
Цей інструмент буде корисним у багатьох ситуаціях, зокрема коли необхідно:
- Перевірити, чи правильно регулярний вираз визначає конкретні шаблони у тексті.
- Зрозуміти, як різні прапорці регулярних виразів (g, i, m, s) впливають на процес пошуку збігів.
- Виконати налагодження регулярного виразу, який може спричиняти проблеми з продуктивністю через катастрофічне повернення.
- Витягти конкретні частини рядка, використовуючи групи захоплення.
Вхідні дані для тестування
Для початку роботи з інструментом вам потрібно заповнити кілька полів:
- Шаблон (регулярний вираз). Як приклад-підказка у цьому полі використовується шаблон
\d+. - Прапорці, які керують логікою пошуку:
- g (Глобальний) — дозволяє знайти всі збіги у тексті замість лише першого.
- i (Регістронезалежний) — ігнорує регістр символів під час пошуку.
- m (Багаторядковий) — змушує символи
^та$відповідати початку та кінцю кожного окремого рядка, а не лише всього тексту загалом. - s (Крапка відповідає розриву рядка) — дозволяє символу крапки
.відповідати також і символам розриву рядка.
- Текст для тестування — це безпосередньо той текст, у якому ви хочете перевірити роботу вашого шаблону. Як приклад-підказка тут виводиться текст «Вставте або введіть текст для перевірки відповідності шаблону».
Результати роботи та вихідні дані
Після введення шаблону та тексту інструмент миттєво опрацьовує дані та виводить такі результати:
- Підсвічені збіги: ваш текст для тестування, у якому всі знайдені збіги виділяються візуально.
- Збіги: детальний список усіх знайдених результатів. Для кожного окремого збігу може відображатися елемент Група
{n}, якщо у шаблоні було використано круглі дужки для захоплення частин рядка. - Збігів:
{count}: загальна кількість знайдених збігів у тексті. - Символи: кількість символів у тексті.
Особливі випадки та обмеження роботи
Під час роботи з тестером ви можете зіткнутися з певними системними повідомленнями та обмеженнями, які допомагають контролювати коректність роботи та стабільність браузера:
- Якщо у тексті не знайдено жодного збігу з вашим шаблоном, інструмент покаже повідомлення «Немає збігів.».
- Якщо у синтаксисі регулярного виразу припущено помилку, на екрані з'явиться попередження «Некоректний регулярний вираз.».
- Якщо виконання регулярного виразу займає занадто багато часу (понад 2 секунди), інструмент автоматично зупиняє процес пошуку та виводить повідомлення: «Цей шаблон виконується занадто довго — можливо, він викликає катастрофічне повернення. Спробуйте спростити його.».
- Якщо прапорець «g» (Глобальний) не вибрано, інструмент поверне лише перший знайдений збіг.
- Коли прапорець «g» (Глобальний) увімкнено, діють ліміти безпеки: інструмент повертає максимум 1 000 збігів та відображає не більше 100 карток збігів. Якщо кількість результатів перевищує ці ліміти, виводиться примітка «Показано перші
{max}.». - Ви можете повністю очистити всі поля введення, натиснувши кнопку «Очистити», після чого з'явиться підтвердження «Очищено.».
Конфіденційність та обробка даних
Використовуючи цей інструмент, ви можете не турбуватися про безпеку ваших даних. Ваш шаблон та текст тестуються безпосередньо у вашому браузері. Жодна інформація, яку ви вводите або вставляєте в поля тестера, не завантажується на сервери BroBroGo.
Поширені запитання (FAQ)
Чи безпечно вставляти сюди мій текст?
Так. Пошук збігів відбувається повністю у вашому браузері — нічого не надсилається на BroBroGo.
Що означають прапорці g/i/m/s?
- g знаходить усі збіги замість лише першого.
- i ігнорує регістр символів.
- m дозволяє символам
^та$відповідати початку та кінцю кожного рядка, а не лише всього тексту. - s дозволяє крапці (
.) відповідати також символам розриву рядка.
Чому з'явилося повідомлення, що мій шаблон виконується занадто довго?
Деякі шаблони викликають катастрофічне повернення (catastrophic backtracking) — рушій перебирає експоненційну кількість комбінацій перед тим, як здатися, що може заморозити вкладку браузера. Цей інструмент скасовує пошук через 2 секунди, якщо це трапляється, тому сама сторінка ніколи не зависає. Спробуйте спростити вкладені повторення на кшталт (a+)+.