Grupos nomeados no método search do Python
Para tornar o trabalho com grupos mais
conveniente, você pode dar nomes a eles. Para isso,
no primeiro parâmetro do método search,
antes da definição da expressão regular, escreve-se
a string '?P', após ela, entre colchetes angulares
é especificado o nome do grupo.
Esses grupos podem ser obtidos usando o
método groupdict. Ele os exibirá na
forma de um dicionário, onde a chave é o nome do grupo,
e o valor é a substring contida nele.
Vamos considerar o trabalho com grupos nomeados com um exemplo. Suponha que temos a string:
txt = '123 456'
Vamos criar dois grupos para ela, que
se chamarão 'num1' e 'num2'
respectivamente:
res = re.search('(?P<num1>\d+)\s(?P<num2>\d+)', txt)
Agora vamos exibir nossos grupos pelo método groupdict:
print(res.groupdict()) # exibirá {'num1': '123', 'num2': '456'}
Dada uma string com um horário:
txt = '12:59:59'
Coloque as horas, minutos e segundos em grupos nomeados separados.
Dada a string:
txt = 'aaa bbb 123 456'
Coloque as substrings 'aaa' e 'bbb'
em grupos nomeados separados.
Dada a string:
txt = 'alex23'
Coloque o nome e a idade do usuário em grupos nomeados separados.