Regex Tester
Тестуйте регулярні вирази на тексті та переглядайте всі збіги. Незамінний інструмент для розробників, які працюють з шаблонами, перевіркою даних або обробкою тексту. Налагоджуйте та вдосконалюйте шаблони реґексів у режимі реального часу за допомогою візуального зворотного зв'язку, який показує, з чим саме збігається вираз.
Поширені запитання
Регулярний вираз - це послідовність символів, яка визначає шаблон пошуку. Регекс використовується для пошуку, зіставлення та маніпулювання текстом на основі шаблонів, а не точних рядків. Це неймовірно потужний інструмент для таких завдань, як перевірка адрес електронної пошти, вилучення даних з тексту, операції пошуку та заміни, а також розбір лог-файлів.
Введіть реґекс-шаблон у поле шаблону і вставте тестовий текст у текстове поле. Інструмент підсвітить усі збіги в реальному часі, показуючи вам, що саме відображає ваш шаблон. Якщо нічого не підсвічується, ваш шаблон не відповідає. Використовуйте цей візуальний зворотний зв'язок, щоб удосконалити шаблон, доки він не буде точно відповідати тому, що вам потрібно.
Найпоширеніші прапори такі: 'g' (глобальний) знаходить усі збіги, а не лише перший, 'i' (без урахування регістру) ігнорує відмінності між великими і малими літерами, 'm' (багаторядковий) змушує ^ і $ збігатися з початком/кінцем рядка, а не лише з початком/кінцем рядка, і 's' (крапковий) змушує . збігатися з символами переходу на новий рядок. Комбінуйте прапори на кшталт 'gi' для глобального нечутливого до регістру зіставлення.
Для електронної пошти: спробуйте /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/ для базової перевірки. Для URL-адрес: /https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)/ works for most cases. Зауважте, що ідеальна перевірка email/URL є надзвичайно складною - ці шаблони обробляють найпоширеніші випадки.
Крапка (.) відповідає будь-якому символу. Зірочка (*) означає "нуль або більше разів", тоді як плюс (+) означає "один або більше разів". Отже, .* збігається з нулем або більше будь-яких символів (включаючи збіг з жодним символом), тоді як .+ вимагає збігу принаймні одного символу. Наприклад, 'a.*b' збігається з 'ab' або 'a123b', але 'a.+b' збігається тільки з 'a123b'.
За замовчуванням квантори типу *, + та {n,m} є жадібними - вони збігаються якомога більше. Додайте знак питання (?) після квантифікатора, щоб зробити його не жадібним (лінивим), тобто таким, що збігається якомога рідше. Наприклад, у тексті '<div>привіт</div><div>світ</div>', /<div>.*<\/div>/ співпадає з усім рядком (жадібний), тоді як /<div>.*?<\/div>/ співпадає з кожним тегом окремо (не жадібний).
Групи перехоплення використовують круглі дужки () для вилучення певних частин збігу. Наприклад, /user-(\d+)/ перехоплює числовий ідентифікатор користувача. Доступ до перехопленого значення можна отримати у більшості мов за допомогою груп збігів. Використовуйте (?:...) для груп без вилучення, якщо вам потрібне групування квантифікаторів, але ви не хочете вилучати значення.
Вставте зразки записів журналу в область тестового рядка і створіть шаблони для вилучення міток часу, IP-адрес, кодів стану або повідомлень про помилки. Візуальне підсвічування показує, що саме збігається, допомагаючи вам уточнити шаблони перед розгортанням їх в інструментах аналізу журналів, таких як Logstash, Splunk або користувацьких скриптах.
Lookaheads (?=...) і lookbehinds (?<=...) стверджують, що шаблон існує попереду або позаду, не включаючи його у збіг. Наприклад, /\d+(?= dollars)/ збігається з числами, за якими слідує ' dollars', але захоплює лише число. Від'ємні lookaheads (?!...) і від'ємні lookbehinds (?<!...) стверджують, що шаблону НЕ існує.
Так! Тестуйте шаблони regex для перевірки форм, таких як номери телефонів, поштові індекси, кредитні картки або кастомні формати. Візуальний зворотний зв'язок допоможе вам переконатися, що ваші шаблони валідації коректно приймають дійсні дані і відкидають недійсні, перш ніж впроваджувати їх у ваш додаток.
