O re.search
é uma função do módulo re
em Python, usada para procurar uma correspondência de uma expressão regular em uma string.
Passos Básicos
Importação do Módulo:
import re
Uso do
re.search
:resultado = re.search(padrão, string)
- padrão: A expressão regular que você deseja encontrar.
- string: A string onde você quer procurar a correspondência.
O que re.search
faz?
- Procura pela primeira ocorrência de uma correspondência do padrão na string.
- Se encontrar uma correspondência, retorna um objeto do tipo
Match
. - Se não encontrar, retorna
None
.
Exemplo Simples
import re
# Definindo o padrão e a string
padrão = r"\d+" # Um ou mais dígitos
string = "Eu tenho 2 gatos e 3 cachorros."
# Usando re.search
resultado = re.search(padrão, string)
# Verificando se houve correspondência
if resultado:
print("Encontrou:", resultado.group()) # Saída: 2
else:
print("Não encontrou correspondência.")
Componentes Importantes
- Expressão Regular (padrão):
r"\d+"
é uma expressão regular que corresponde a um ou mais dígitos. - Método
group()
: Sere.search
encontrar uma correspondência, você pode usargroup()
para obter a string correspondente.
Mais Detalhes
Objetos
Match
: O objeto retornado porre.search
(se houver correspondência) contém informações detalhadas sobre a correspondência, como a posição de início e fim.print("Início:", resultado.start()) # Posição inicial da correspondência print("Fim:", resultado.end()) # Posição final da correspondência
Comparação com re.match
re.search
procura a correspondência em qualquer parte da string.re.match
só procura a correspondência no início da string.
Exemplo Comparativo
import re
padrão = r"\d+"
string = "A idade é 21 anos."
# Usando re.search
resultado_search = re.search(padrão, string)
print("re.search encontrou:", resultado_search.group()) # Saída: 21
# Usando re.match
resultado_match = re.match(padrão, string)
print("re.match encontrou:", resultado_match) # Saída: None (nenhuma correspondência no início da string)
Conclusão
- re.search: Ótimo para encontrar uma correspondência em qualquer lugar na string.
- Sintaxe:
re.search(padrão, string)
- Retorno: Objeto
Match
(se encontrado) ouNone
.
Espero que isso ajude a esclarecer o uso do re.search
!