вичайно, ось "словник" основних елементів регулярних виразів, які часто використовуються в модулі re Python:
Символи та їх значення:
. (крапка): Відповідає будь-якому одному символу, крім нового рядка (\n).
^ (каретка): Відповідає початку рядка.
$ (долар): Відповідає кінцю рядка.
* (зірочка): Відповідає попередньому символу або групі нуль або більше разів.
+ (плюс): Відповідає попередньому символу або групі один або більше разів.
? (знак питання): Відповідає попередньому символу або групі нуль або один раз. Також використовується для створення "нежадібних" квантифікаторів (*?, +?, ??).
{n}: Відповідає попередньому символу або групі рівно n разів.
{n,}: Відповідає попередньому символу або групі n або більше разів.
{n,m}: Відповідає попередньому символу або групі від n до m разів включно.
[] (квадратні дужки): Визначають набір символів.
[abc]: Відповідає будь-якій з літер 'a', 'b' або 'c'.
[a-z]: Відповідає будь-якій малій літері від 'a' до 'z'.
[A-Z]: Відповідає будь-якій великій літері від 'A' до 'Z'.
[0-9]: Відповідає будь-якій цифрі від 0 до 9.
[^abc]: Відповідає будь-якому символу, крім 'a', 'b' або 'c'.
\ (зворотний слеш): Використовується для екранування спеціальних символів, щоб вони сприймалися як звичайні символи, або для позначення спеціальних послідовностей.
Спеціальні послідовності (починаються з \):
\d: Відповідає будь-якій десятковій цифрі (0-9). Еквівалентно [0-9].
\D: Відповідає будь-якому символу, який не є десятковою цифрою. Еквівалентно [^0-9].
\s: Відповідає будь-якому пробільному символу (пробіл, табуляція, новий рядок, повернення каретки, форматування сторінки). Еквівалентно [ \t\n\r\f\v].
\S: Відповідає будь-якому символу, який не є пробілом. Еквівалентно [^ \t\n\r\f\v].
\w: Відповідає будь-якому буквено-цифровому символу (літери, цифри та символ підкреслення). Еквівалентно [a-zA-Z0-9_].
\W: Відповідає будь-якому символу, який не є буквено-цифровим. Еквівалентно [^a-zA-Z0-9_].
\b: Відповідає порожньому рядку на початку або в кінці слова ("межа слова").
\B: Відповідає порожньому рядку, який не знаходиться на межі слова.
\\: Відповідає літеральному зворотному слешу.
Групи та альтернативи:
() (круглі дужки): Створюють групу захоплення. Текст, що відповідає патерну всередині дужок, може бути вилучений окремо.
| (вертикальна риска): Позначає альтернативу ("або"). Наприклад, a|b відповідає або 'a', або 'b'.
(?:...): Негрупуючі дужки. Використовуються для групування частини патерну без створення групи захоплення.
Квантифікатори (вказують на кількість повторень):
*: 0 або більше разів (жадібний).
+: 1 або більше разів (жадібний).
?: 0 або 1 раз (жадібний).
{n}: Рівно n разів.
{n,}: n або більше разів (жадібний).
{n,m}: Від n до m разів включно (жадібний).
*?: 0 або більше разів (нежадібний).
+?: 1 або більше разів (нежадібний).
??: 0 або 1 раз (нежадібний).
{n,}?: n або більше разів (нежадібний).
{n,m}?: Від n до m разів включно (нежадібний).
Флаги (передаються як додатковий аргумент до функцій re):
re.IGNORECASE або re.I: Ігнорувати регістр при зіставленні.
re.MULTILINE або re.M: Впливає на поведінку ^ і $, змушуючи їх відповідати початку та кінцю кожного рядка (а не лише всього рядка).
re.DOTALL або re.S: Змушує . відповідати також символу нового рядка.
re.ASCII або re.A: Обмежує \w, \W, \b, \B, \d, \D, \s і \S відповідністю лише ASCII-символам.
re.VERBOSE або re.X: Дозволяє використовувати пробіли та коментарі всередині регулярного виразу для кращої читабельності.