Regex наръчник
Бърза справка за синтаксиса на регулярните изрази. Всеки токен с описание и пример.
Котви
| Токен | Значение | Пример |
|---|---|---|
^ | Начало на низа (или ред с m) | ^Hello |
$ | Край на низа (или ред с m) | world$ |
\b | Граница на дума | \bcat\b |
\B | Не е граница на дума | \Bcat |
Класове символи
| Токен | Значение | Пример |
|---|---|---|
. | Всеки знак освен нов ред | a.c |
\d | Всяка цифра, 0–9 | \d\d |
\D | Всеки нецифрен символ | \D+ |
\w | Всеки знак от дума (a–z, A–Z, 0–9, _) | \w+ |
\W | Всеки знак, който не е от дума | \W |
\s | Всеки знак за интервал | a\sb |
\S | Всеки знак, който не е интервал | \S+ |
[abc] | Всеки един знак от множеството | [aeiou] |
[^abc] | Всеки знак извън множеството | [^0-9] |
[a-z] | Всеки знак в диапазона a до z | [A-Z] |
Квантори
| Токен | Значение | Пример |
|---|---|---|
* | Нула или повече от предходния | ab* |
+ | Един или повече от предходния | ab+ |
? | Нула или един (незадължителен) | ab? |
{n} | Точно n от предходния | \d{4} |
{n,} | n или повече от предходния | \d{2,} |
{n,m} | Между n и m от предходния | \d{2,4} |
*? | Мързелив — съвпада с възможно най-малко | <.*?> |
Групи и lookaround
| Токен | Значение | Пример |
|---|---|---|
(abc) | Прихващаща група | (\d+) |
(?:abc) | Неприхващаща група | (?:ab)+ |
(?<name>) | Именувана прихващаща група | (?<year>\d{4}) |
a|b | Алтернация — a или b | cat|dog |
(?=abc) | Положителен lookahead | \d(?=px) |
(?!abc) | Отрицателен lookahead | \d(?!px) |
(?<=abc) | Положителен lookbehind | (?<=\$)\d+ |
(?<!abc) | Отрицателен lookbehind | (?<!\$)\d+ |
\1 | Обратно препращане към група 1 | (\w)\1 |
Специални и escape-и
| Токен | Значение | Пример |
|---|---|---|
\. | Буквална точка (escape на специален символ) | 3\.14 |
\uXXXX | Unicode знак по кодова точка | é |
Флагове
| Токен | Значение | Пример |
|---|---|---|
g | Global — намира всички съвпадения | /\d+/g |
i | Без чувствителност към регистър | /abc/i |
m | Многоредов — ^ и $ виждат разделителите на редове | /^x/m |
s | Dotall — . съвпада и с нов ред | /a.b/s |
u | Unicode режим | /\u{1F600}/u |
y | Sticky — съвпада само от lastIndex | /\d/y |
Пробвай сам
Отиди до тестера, за да експериментираш на живо с някой от тези токени.