Muitas vezes, depois de obter o resultado de uma pesquisa, precisamos pesquisar um nível mais profundo em parte do resultado de pesquisa existente. Por exemplo, em um determinado corpo de texto, pretendemos obter os endereços da web e também extrair as diferentes partes do endereço da web como o protocolo, nome de domínio, etc. Nesse cenário, precisamos ter ajuda da função de grupo que é usada para dividir o resultado da pesquisa em vários grupos com base na expressão regular atribuída. Criamos tal expressão de grupo separando o resultado da pesquisa principal usando parênteses ao redor da parte pesquisável, excluindo as palavras fixas que queremos encontrar.
import re
text = "The web address is https://www.tutorialspoint.com"
# Taking "://" and "." to separate the groups
result = re.search('([\w.-]+)://([\w.-]+)\.([\w.-]+)', text)
if result :
print "The main web Address: ",result.group()
print "The protocol: ",result.group(1)
print "The doman name: ",result.group(2)
print "The TLD: ",result.group(3)
Quando executamos o programa acima, obtemos a seguinte saída -
The main web Address: https://www.tutorialspoint.com
The protocol: https
The doman name: www.tutorialspoint
The TLD: com