Python Glossary English

все Python 3reфункция

re.Match.groups()

группы

Возвращает кортеж ВСЕХ захваченных групп объекта Match (без группы 0). Незахваченным группам подставляется default (по умолчанию None).

Синтаксис

m.groups(default=None)

Группа 0 — всё совпадение целиком — в кортеж намеренно не входит, за ней надо идти в m.group(0). Необязательная группа, которая не сработала, даёт None, и он взрывается ровно там, где вы склеиваете строки или зовёте int(): либо проверяйте, либо передайте groups('') и получите пустые строки. Если групп в паттерне нет вовсе, вернётся пустой кортеж, а не None.

Примеры

import re
m = re.match(r'(\w+)@(\w+)', 'user@host')
m.groups() # → ('user', 'host')
m2 = re.match(r'(a)(b)?', 'a')
m2.groups() # → ('a', None)
m2.groups(default='-') # → ('a', '-')

См. также

Частые ошибки

Открыть в полном глоссарииdocs.python.orgСообщить о неточности