Към съдържанието

Regex тестер

Тествайте регулярни изрази в реално време с подчертаване на съвпадения и показване на групи за прихващане. Безплатен онлайн regex дебъгер, работи 100% във вашия браузър.

Флагове
Режим
Преглед
Резултати
Въведете regex шаблон по-горе.
Бърза справка за regex
ШаблонОписание
.Произволен символ (без нов ред)
^Начало на низ / ред
$Край на низ / ред
*0 или повече повторения
+1 или повече повторения
?0 или 1 (незадължително)
{n}Точно n повторения
{n,m}Между n и m повторения
\dЦифра [0-9]
\DНе-цифра
\wБуквено-цифров символ [a-zA-Z0-9_]
\WНе-буквено-цифров символ
\sИнтервал
\SНе-интервал
\bГраница на дума
[abc]Клас: a, b или c
[^abc]Отрицание: не a, b или c
(abc)Група за прихващане
(?:abc)Неприхващаща група
(?<n>abc)Именувана група "n"
a|bАлтернатива: a или b

Какво е регулярен израз?

Регулярен израз (regex) е последователност от символи, която определя шаблон за търсене. Regex се използва практически във всеки програмен език и инструмент — от валидация на формуляри в JavaScript до парсване на логове в Python до търсене и замяна в текстови редактори. Шаблонът комбинира литерални символи, метасимволи (. ^ $ * + ? { } [ ] | ( )) и класове символи (\d цифра, \w буквено-цифров символ, \s интервал). Този инструмент използва ECMAScript regex двигателя (същият, използван в JavaScript, TypeScript и Node.js).

Обяснение на regex флаговете

gглобален: намиране на всички съвпадения, не само първото. Необходим за броене на срещания или замяна на всяко появяване.
iбез значение на регистъра: съвпадение на главни и малки букви взаимозаменяемо. /hello/i съвпада с "Hello", "HELLO" и "hello".
mмногоредов: ^ и $ съвпадат с началото и края на всеки ред, не само на целия низ. Критично за парсване на логове ред по ред.
sdotAll: метасимволът . съвпада и със символи за нов ред. Без този флаг . спира при прекъсвания на редове.

Групи за прихващане

Групите за прихващане (pattern) прихващат съвпадналия подниз за извличане или обратна референция. Именувани групи (?<name>pattern) присвояват четимо име на прихванатото, достъпно чрез match.groups.name — много по-ясно от номерирани групи в сложни шаблони. Неприхващащи групи (?:pattern) групират без прихващане — полезни за прилагане на квантификатори към последователност без създаване на ненужно прихващане. Обратни референции като $1, $2 в низове за замяна се отнасят до прихванатия текст по номер на групата.

Поверителност

Цялото съвпадение работи 100% във вашия браузър. Никакви данни не се изпращат към сървър.