Expressões regulares (regex) são padrões poderosos para encontrar, corresponder e extrair texto. São usadas em programação, validação de dados, operações de busca e substituição e análise de logs. O desafio é que a sintaxe de regex pode ser difícil de acertar. Nosso Testador de Regex gratuito permite experimentar em tempo real para que você veja exatamente o que seu padrão corresponde.
O que você precisa
- Um padrão que deseja testar, ou um problema de correspondência de texto para resolver
- Um navegador web (Chrome, Firefox, Safari ou Edge)
- Nenhuma conta ou instalação necessária
Guia passo a passo
Abra o Testador de Regex
Acesse a ferramenta Testador de Regex. Você verá duas áreas principais: uma para seu padrão de expressão regular e outra para o texto de teste contra o qual deseja corresponder.
Escreva seu padrão regex
Insira uma expressão regular no campo de padrão. Comece simples e aumente a complexidade. Por exemplo, comece com uma palavra literal como hello para corresponder exatamente esse texto, depois refine seu padrão com caracteres especiais para corresponder padrões mais amplos.
Insira o texto de teste
Cole ou digite texto de exemplo na área de teste. Inclua exemplos que devem corresponder e exemplos que não devem. A ferramenta destaca todas as correspondências em tempo real enquanto você digita, para que possa ver imediatamente se seu padrão funciona corretamente.
Refine e verifique
Ajuste seu padrão e observe as correspondências serem atualizadas instantaneamente. Adicione casos extremos ao seu texto de teste — entradas incomuns, condições de limite e formatos difíceis — para garantir que seu regex os trate adequadamente. Quando estiver satisfeito, copie o padrão para seu código ou ferramenta.
Bom saber O Testador de Regex roda inteiramente no seu navegador. Nenhum dado é enviado para nenhum servidor, então você pode testar padrões com segurança contra texto sensível como endereços de e-mail, arquivos de log ou dados pessoais.
Sintaxe essencial de regex
| Símbolo | Significado | Exemplo |
|---|---|---|
. |
Qualquer caractere único | h.t corresponde a "hat", "hit", "hot" |
* |
Zero ou mais do anterior | ab*c corresponde a "ac", "abc", "abbc" |
+ |
Um ou mais do anterior | ab+c corresponde a "abc", "abbc" mas não "ac" |
? |
Zero ou um do anterior | colou?r corresponde a "color" e "colour" |
\d |
Qualquer dígito (0-9) | \d{3} corresponde a "123", "456" |
\w |
Qualquer caractere de palavra | \w+ corresponde a "hello", "test123" |
\s |
Qualquer espaço em branco | hello\sworld corresponde a "hello world" |
^ |
Início da string | ^Hello corresponde a "Hello world" |
$ |
Fim da string | world$ corresponde a "Hello world" |
[abc] |
Qualquer caractere no conjunto | [aeiou] corresponde a qualquer vogal |
(...) |
Grupo de captura | (ab)+ corresponde a "ab", "abab" |
Padrões comuns para experimentar
Copie esses padrões no Testador de Regex e experimente com eles.
Endereço de e-mail
[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}
Corresponde a formatos padrão de e-mail como user@example.com e first.last@company.co.uk. Teste com formatos de e-mail válidos e inválidos para ver como ele lida com casos extremos.
URL
https?://[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}(/[^\s]*)?
Corresponde a URLs HTTP e HTTPS como https://example.com e http://site.org/path/page. O s? torna o "s" em "https" opcional.
Número de telefone (formato dos EUA)
(\+1[-.\s]?)?\(?\d{3}\)?[-.\s]?\d{3}[-.\s]?\d{4}
Corresponde a vários formatos de telefone dos EUA: (555) 123-4567, 555-123-4567, +1 555.123.4567 e variações similares.
Dica Ao construir um regex, comece com o padrão mais simples que corresponda ao seu texto-alvo e depois adicione restrições uma de cada vez. Tentar escrever um regex complexo de uma vez é muito mais difícil do que construí-lo incrementalmente enquanto observa as correspondências se atualizarem em tempo real.
Erros comuns e como evitá-los
Esquecer de escapar caracteres especiais. Caracteres como ., *, +, ?, (, ), [, ], {, } têm significado especial em regex. Para corresponder a eles literalmente, prefixe com uma barra invertida: \. corresponde a um ponto, \( corresponde a um parêntese.
Ser muito ganancioso. Por padrão, * e + correspondem ao máximo de texto possível. Se quiser a correspondência mais curta, adicione ? após eles: .*? corresponde ao mínimo possível.
Não ancorar seu padrão. Sem ^ e $, um padrão como \d{3} corresponderá a quaisquer três dígitos consecutivos em qualquer lugar da string, inclusive dentro de números maiores. Use âncoras quando precisar corresponder a string inteira.
Importante A sintaxe de regex varia ligeiramente entre linguagens de programação e ferramentas. Um padrão que funciona em JavaScript pode se comportar de forma diferente em Python ou PHP. Sempre teste seu padrão final na linguagem ou ambiente onde vai utilizá-lo.
Perguntas frequentes
O que são flags de regex?
Flags modificam como o padrão é aplicado. Flags comuns incluem g (global — encontrar todas as correspondências, não apenas a primeira), i (case-insensitive — sem distinção entre maiúsculas e minúsculas) e m (multiline — ^ e $ correspondem a limites de linha, não apenas de string). O Testador de Regex permite alternar essas flags.
Posso usar regex para buscar e substituir?
Sim. A maioria dos editores de texto e linguagens de programação suportam busca e substituição baseada em regex. Grupos de captura (...) permitem referenciar texto correspondido na string de substituição.
Como corresponder entre múltiplas linhas?
Use a flag s (dotall) para fazer . corresponder a caracteres de nova linha, ou use [\s\S] como alternativa multiplataforma que corresponde a qualquer caractere incluindo novas linhas.
Próximos passos
Agora que você consegue construir e testar padrões regex, experimente usá-los no seu código, editor de texto ou ferramentas de linha de comando. Para outros utilitários de desenvolvedor, confira o Analisador Cron para expressões de agendamento ou o Formatador JSON para trabalhar com dados estruturados.