
Testador de Expressões Regulares Python
Teste e depure expressões regulares Python online com o Testador de Regex Python do Qodex. Destaque correspondências instantaneamente e refine padrões usados para validação de e-mail, verificação de senhas, validação de número de telefone e muito mais. Use dados do Gerador de E-mail ou Gerador de UUID, e compare o comportamento com os Testadores de Regex Java ou JavaScript.
Testador de Regex Python - Documentação
O que é Regex em Python?
Python utiliza o módulo nativo re para suporte a expressões regulares. Regex permite que você combine, extraia e transforme texto usando padrões. É amplamente utilizado em:
Validação de dados (ex.: e-mail, senha, números de telefone)
Processamento e limpeza de texto
Web scraping e análise de logs
Extração de padrões de strings
Componentes Principais do Regex em Python
Correspondência em Tempo Real - Destacamento imediato de padrões enquanto você digita.
Suporta Sintaxe do módulo re - Funciona exatamente como o motor de regex do Python.
Grupos de Captura Exibidos - Mostra grupos de captura e correspondências.
Fácil para Iniciantes - Cole seu regex e a string de teste, sem necessidade de código.
Integra com Ferramentas de Teste - Experimente com Gerador de Endereços, Gerador de Senhas ou Gerador de Endereço MAC.
Metacaracteres
.- Corresponde a qualquer caractere exceto nova linha(\n).Exemplo:
a.bcorresponde aacb,a9b, etc., mas não aab.^- Corresponde ao início de uma string.Exemplo:
^Hellocorresponde a "Hello world" mas não a "Say Hello".$- Corresponde ao final de uma string ou imediatamente antes da nova linha no final.Exemplo:
world$corresponde a "Hello world" mas não a "world peace".|- Funciona como operador lógico OU.Exemplo:
cat|dogcorresponde a "cat" ou "dog".
Classes de Caracteres
[abc]- Corresponde a qualquer um dea,bouc.Exemplo:
gr[ae]ycorresponde a "gray" e "grey".[^abc]- Nega o conjunto. Corresponde a qualquer caractere excetoa,bouc.Exemplo:
[^0-9]corresponde a qualquer não-dígito.[a-zA-Z]- Corresponde a qualquer caractere alfabético.Exemplo:
[A-Z]corresponde apenas a letras maiúsculas.
Classes de Caracteres Predefinidas
\d: Corresponde a qualquer dígito; equivalente a[0-9].\D: Corresponde a qualquer não-dígito.\s: Corresponde a qualquer espaço em branco: espaço, tabulação, nova linha, etc.\S: Corresponde a qualquer caractere que não seja espaço em branco.\w: Corresponde a qualquer caractere de palavra:[a-zA-Z0-9_].\W: Corresponde a qualquer caractere não considerado de palavra.
Quantificadores
*- Corresponde a 0 ou mais repetições do padrão anterior.Exemplo:
ab*corresponde a "a", "ab", "abb", "abbb"...+- Corresponde a 1 ou mais ocorrências.Exemplo:
ab+corresponde a "ab", "abb", "abbb"... mas não a "a".?- Corresponde a 0 ou 1 ocorrência, tornando-a opcional.Exemplo:
ab?corresponde a "a" ou "ab".{n}- Exatamentenocorrências.Exemplo:
a{3}corresponde a "aaa".{n,}- Pelo menosnocorrências.Exemplo:
a{2,}corresponde a "aa", "aaa", "aaaa"...{n,m}- Entrenemocorrências.Exemplo:
a{2,4}corresponde a "aa", "aaa" ou "aaaa".
Grupos
(
abc) : Grupo de captura que corresponde a "abc" e o armazena.Exemplo:
(ha)+corresponde a "ha", "hahaha", etc.(
?:abc) : Grupo sem captura; agrupa sem salvar.Útil ao aplicar quantificadores ou alternâncias sem referências retroativas.
Por Que Grupos São Importantes?
O agrupamento com parênteses serve a mais do que simplesmente combinar padrões: ele permite extrair e reutilizar partes específicas da correspondência, conhecidas como grupos de captura. Isso é especialmente útil para:
Extrair pares chave-valor de texto estruturado
Analisar datas, horários ou medidas de logs ou formulários
Extrair partes de uma URL, endereço de e-mail ou nome de arquivo
Lookahead e Lookbehind
Lookahead e lookbehind fazem parte das chamadas asserções de largura zero em expressões regulares. Elas permitem combinar conteúdo com base no que vem antes ou depois, sem incluir esses caracteres vizinhos na correspondência em si.
(
?=abc) : Lookahead positivo; corresponde se abc vier a seguir.Exemplo:
\d(?=px)corresponde a um dígito seguido de "px".(
?!abc) : Lookahead negativo; corresponde se abc não vier a seguir.Exemplo:
\d(?!px)corresponde a dígitos não seguidos de "px".(
?<=abc) : Lookbehind positivo; corresponde se precedido por abc.Exemplo:
(?<=@)\w+corresponde ao texto após "@" em um e-mail.(
?<!abc) : Lookbehind negativo; corresponde se não precedido por abc.
Âncoras e Fronteiras
\b: Fronteira de palavra (entre\we\W).Exemplo:
\bcat\bcorresponde a "cat" em "the cat sat" mas não em "catering".\B: Fronteira de não-palavra.\A: Corresponde ao início da string.\Z: Corresponde ao final da string ou antes da nova linha no final.
Flags
Você pode passar flags para funções como re.search() ou usá-las inline com (?i), (?m), etc.
re.IGNORECASE / re.I: Correspondência sem diferenciação de maiúsculas e minúsculas.re.MULTILINE / re.M:^e$correspondem ao início/fim de cada linha.re.DOTALL / re.S: O ponto.corresponde a qualquer caractere, incluindo nova linha.re.VERBOSE / re.X: Permite dividir padrões com espaços em branco e comentários.re.ASCII / re.A: Faz com que\w,\b,\d,\s, etc. correspondam apenas a caracteres ASCII.
Exemplos de Expressões Regulares em Python
Exemplo 1: Validação de E-mail
import re
email_pattern = re.compile(r'^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$')
email = "user@example.com"
print("Email Valid:", bool(email_pattern.match(email)))
Exemplo 2: Verificação de Força de Senha
password_pattern = re.compile(r'^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,}$')
password = "Aa123456!"
print("Password Strong:", bool(password_pattern.match(password)))
Exemplo 3: Extração de Palavras de uma String
text = "Regex is #1 at pattern matching!"
word_pattern = re.compile(r'\b\w+\b')
for match in word_pattern.finditer(text):
print("Found:", match.group())
Como Funciona
Digite seu padrão regex e a string de teste de exemplo.
Veja as correspondências instantâneas e grupos de captura abaixo.
Copie, edite e refine seu padrão até que esteja perfeito.
Use dados de outras ferramentas para simular casos do mundo real.
Dicas Pro para Escrever Regex Eficaz em Python
Compile regex usando
re.compile()para melhor desempenho em loops.Use grupos nomeados (
(?P<nome>...)) para código mais limpo e legível.Use
re.VERBOSEpara regex grandes, permitindo comentários e espaçamento.Use
re.findall()para retornar todas as correspondências como lista.Evite regex para dados estruturados ou profundamente aninhados; use parsers.
Experimente com o Testador de Regex Python do Qodex para casos extremos e dados ao vivo.
Explore Mais no Qodex
Frequently Asked Questions
Como escrevo regex em Python?
Como deixo o regex sem diferenciar maiúsculas e minúsculas em Python?
Como valido um e-mail com regex em Python?
Qual a diferença entre match() e search()?
Onde posso testar meus padrões de regex Python?
Como escapar caracteres especiais em padrões regex?
Related Articles



Teste suas APIs hoje!
Escreva em linguagem natural e o Qodex converte em testes seguros e prontos para execução.



