Forge
markdowne8ad0934
1<!-- kb_card
2id: kb-regex-quickref-v1
3title: Regex — L0 шпаргалка
4cluster: regex-friedl-mre3
5kb_layer: L0
6book_alignment: Сводные таблицы в духе ранних глав MRE + справочника по метасимволам.
7last_reviewed_utc: 2026-03-21
8-->
9
10# Regex: шпаргалка (L0)
11
12## Назначение
13
14Минимум символов для чтения и набора паттерна; детали — в `kb-regex-syntax-features-v1.md`.
15
16## Метасимволы (типичный POSIX/PCRE/.NET стиль)
17
18| Класс | Символы | Смысл |
19|--------|---------|--------|
20| Литералы | буквы/цифры (часто) | Сами себе |
21| Точка | `.` | Один символ (кроме перевода строки — зависит от режима) |
22| Класс | `[...]`, `[^...]` | Один символ из набора / не из набора |
23| Квантификатор | `*`, `+`, `?`, `{m,n}` | Повтор предыдущего «элемента» |
24| Группа | `(...)` | Капчур + приоритет + квантификация блока |
25| Или | `\|` | Альтернатива |
26| Якорь | `^`, `$` | Начало/конец строки (зависит от многострочности) |
27| Граница слова | `\b`, `\B` | Между `\w` и не-`\w` |
28
29## Частые шорткаты классов
30
31| Шорткат | Обычно |
32|---------|--------|
33| `\d` | Цифра |
34| `\w` | «Словесный» символ (зависит от Unicode-режима) |
35| `\s` | Пробельный |
36
37## Экранирование
38
39- В regex-литералах языка и в разных инструментах число обратных слэшей разное: **всегда** сверяй с правилами строки языка (C# verbatim `@"..."`, JS template vs обычная строка).
40
41## Жадность
42
43- По умолчанию квантификаторы **жадные** (берут максимум, отдают назад при необходимости).
44- `*?`, `+?`, `??`, `{m,n}?` — ленивые (минимум совпадения).
45
46## Три вопроса перед матчем
47
481. Какой **диалект** (JS, .NET, PCRE, grep -E)?
492. Нужен ли **многострочный** или **однострочный** режим для `^$` и `.`?
503. Есть ли **таймаут** или лимит шагов в проде (.NET `MatchTimeout`)?
51
52## Связи
53
54- `index-knowledge-regex-cluster-v1.md`
55- `kb-regex-syntax-features-v1.md`
56- `regex-playbook.md`
57
58<!-- section:quantifiers-one-liner -->
59**Квантификаторы:** `*` ≥0, `+` ≥1, `?` 0 или 1, `{m}` ровно m, `{m,}` ≥m, `{m,n}` от m до n.
60<!-- /section:quantifiers-one-liner -->
61
62
View only · write via MCP/CIDE