Testador de Regex
Teste regex de JavaScript ao vivo. Veja matches, grupos de captura e aplique substituições enquanto digita.
/
/
Digite uma entrada acima para ver o resultado.
Digite uma entrada acima para ver o resultado.
Para que serve?
Regex é denso e implacável. A forma de escrever uma que realmente funcione é iterativa — pattern, texto de exemplo, ver o que casa, ajustar. Esta ferramenta te dá esse loop no navegador usando o RegExp nativo do JavaScript, mais inspeção de grupos de captura e preview de substituição. Patterns e entradas nunca saem da página.
Quando usar
- Validar entrada do usuário (formato de e-mail, telefone, CEP) e ver exatamente quais entradas passam e quais falham.
- Fazer parsing de linhas de log, extrair campos, montar filtros de log.
- Desenhar patterns de find-and-replace antes de rodar contra um codebase de verdade.
- Debugar uma regex que você copiou do Stack Overflow e não funciona — cole aqui, veja o que ela realmente casa.
Patterns comuns
\b\w+@\w+\.\w+\b— formato de e-mail^\s*$— linha vazia/só whitespace (com flagm)(?<year>\d{4})-(?<month>\d{2})— grupos de captura nomeados(?:.*)— grupo não-capturante(?=foo)/(?!foo)— lookahead / lookahead negativo
Pegadinhas comuns
- JavaScript ≠ PCRE. Sem
\K, sem patterns recursivos, lookbehind só desde ES2018. Patterns de Perl, PHP ou Python frequentemente precisam de ajuste. - Sem a flag
gvocê só pega o primeiro match. Adicionegpara "encontrar todos"; combine commse os anchors devem casar por linha. - Greedy vs lazy.
.*pega o máximo possível;.*?pega o mínimo. A diferença entre casar<b>hi</b> e <i>there</i>como um bloco ou como dois. - Anchors em limites de linha vs string.
^e$casam fim de string por padrão; com a flagmcasam cada linha. - Especiais de replacement.
$&é o match inteiro;$1,$2, … são grupos de captura;$$é um$literal. Esquecer disso é fonte clássica de "por que minha regex está comendo meus dólares". - Não faça parsing de HTML com regex para nada sério. O aviso clássico é verdadeiro: tags aninhadas, comentários e CDATA precisam de um parser de verdade. Regex serve para scraping pontual ou entradas controladas.