Grupos de captura no método search do Python

Frequentemente, ao buscar uma correspondência, é conveniente decompor a substring nos chamados grupos de captura. Eles representam uma maneira de dividir o que foi encontrado em partes separadas. Para usá-los, é necessário colocar parte da expressão regular entre parênteses.

Vamos tentar na prática. Suponha que temos a seguinte string:

pythontxt = '123 456'

Vamos decompor as substrings com números em grupos de captura. Para isso, escreveremos a seguinte expressão regular:

pythonres = re.search('(\d+) (\d+)', txt)

Como resultado, obteremos um objeto de correspondência (match object). Em seu elemento com índice 1 estará o primeiro grupo de captura, no elemento com índice 2 - o segundo grupo de captura, e no elemento com índice 0 - todo o texto encontrado (o chamado grupo zero):

pythonprint(res[0]) # '123 456' - texto encontrado
print(res[1]) # '123'     - 1º grupo
print(res[2]) # '456'     - 2º grupo
Задание 1

Dada uma string contendo um domínio:

pythontxt = 'sss domain.ru zzz'

Encontre este domínio e coloque seu nome no primeiro grupo de captura, e o TLD (domínio de topo) - no segundo.

Задание 2

Dada uma string contendo uma data:

pythontxt = '31.12.2025'

Coloque o dia no primeiro grupo de captura, o mês - no segundo, e o ano - no terceiro.