0
Promoção de Volta das Aulas ! Cursos com 25% OFF no menu "Cursos"
agosto 22, 2025
0
César Fontanella

Expressões Regulares em Python: Guia Prático para Iniciantes

As expressões regulares (regex) são ferramentas poderosas para trabalhar com texto, permitindo buscar, validar e manipular padrões de forma eficiente. Se você já precisou validar um email, encontrar números em uma string ou substituir palavras em um texto, regex é a solução.

Neste artigo, você vai aprender os principais conceitos e como aplicar expressões regulares em Python na prática.


O que são Expressões Regulares?

Expressões regulares são padrões de busca em texto. Elas descrevem formatos específicos que podem ser usados para localizar ou manipular dados.

Exemplo simples:

import re

texto = "Meu número é 12345"
padrao = r"\d+"  # busca por um ou mais dígitos

resultado = re.findall(padrao, texto)
print(resultado)  # ['12345']

Aqui, \d+ significa “um ou mais dígitos consecutivos”.


Principais Metacaracteres em Regex

  • . → corresponde a qualquer caractere
  • \d → corresponde a dígitos (0–9)
  • \w → letras, números e underline
  • \s → espaços em branco
  • * → zero ou mais ocorrências
  • + → uma ou mais ocorrências
  • ? → zero ou uma ocorrência
  • {n,m} → repetições de n até m vezes
  • | → OU lógico
  • ^ → início da string
  • $ → final da string

Exemplo:

texto = "email: [email protected]"
padrao = r"\w+@\w+\.\w+"

print(re.findall(padrao, texto))  # ['[email protected]']

Funções mais usadas do módulo re

O Python possui o módulo re, que traz várias funções úteis:

1. re.match()

Verifica se o padrão aparece no início da string.

print(re.match(r"\d+", "123abc"))  # encontra
print(re.match(r"\d+", "abc123"))  # não encontra

2. re.search()

Procura a primeira ocorrência em qualquer parte da string.

print(re.search(r"\d+", "abc123").group())  # 123

3. re.findall()

Retorna todas as correspondências como lista.

print(re.findall(r"\d+", "abc123 xyz456"))  # ['123', '456']

4. re.sub()

Substitui padrões encontrados por outro valor.

texto = "Python é incrível!"
print(re.sub(r"incrível", "poderoso", texto))
# Saída: Python é poderoso!

Validando dados com regex

Regex é muito útil para validar informações como emails, CEPs ou telefones.

Exemplo de validação simples de email:

email = "[email protected]"
padrao = r"^[\w\.-]+@[\w\.-]+\.\w+$"

if re.match(padrao, email):
    print("Email válido")
else:
    print("Email inválido")

Quando usar Expressões Regulares?

✅ Quando você precisa:

  • Extrair informações de textos (ex.: números, emails, datas).
  • Validar formatos (ex.: CEP, CPF, telefone).
  • Substituir trechos em massa em documentos ou logs.

❌ Evite regex quando a lógica pode ser resolvida com métodos de string mais simples (split, replace, startswith), pois regex pode ser mais custoso e difícil de ler.


Conteúdo adaptado do capítulo “Expressões Regulares” do livro Python Fluente de Luciano Ramalho.