Testador de Regex Online
Digite a expressão regular e o texto de teste para ver os matches destacados em tempo real. Suporte a grupos de captura e todas as flags do JavaScript.
O que é regex?
Regex (expressão regular) é uma linguagem de padrões para buscar e manipular texto. Uma regex descreve um padrão que pode corresponder a uma ou mais strings.
Padrão: \d{2}/\d{2}/\d{4}
Match: "Hoje é 22/04/2024 e amanhã 23/04/2024"Flags mais usadas
| Flag | Efeito |
|---|---|
g — Global | Encontra todos os matches (sem ela, apenas o primeiro) |
i — Case-insensitive | [a-z] também captura [A-Z] |
m — Multiline | ^ e $ correspondem ao início/fim de cada linha |
s — Dotall | . corresponde a qualquer caractere, inclusive \n |
Casos de uso comuns
Validar e-mail:
^[a-zA-Z0-9._%+\-]+@[a-zA-Z0-9.\-]+\.[a-zA-Z]{2,}$Validar CPF (formato):
^\d{3}\.\d{3}\.\d{3}-\d{2}$Extrair URLs:
https?://[^\s"'<>]+Validar data DD/MM/AAAA:
\b(0[1-9]|[12]\d|3[01])/(0[1-9]|1[0-2])/\d{4}\bGrupos de captura
Grupos entre parênteses (...) capturam partes específicas do match:
Padrão: (\d{4})-(\d{2})-(\d{2})
Texto: "Data: 2024-04-22"
Grupo 1: "2024"
Grupo 2: "04"
Grupo 3: "22"Use (?:...) para agrupar sem capturar (grupo não-capturante).
Perguntas frequentes
Regex do JavaScript é diferente de outras linguagens?
Em essência é o mesmo padrão (ECMA-262), mas com algumas diferenças: JavaScript não suporta lookbehind de comprimento variável, não tem o modificador x (verbose), e algumas funções de texto como String.matchAll() são específicas da API JS.
O que é ReDoS?
ReDoS (Regular Expression Denial of Service) acontece quando uma regex malformada com backtracking exponencial trava o motor de execução. Padrões como (a+)+ em textos longos podem consumir segundos ou minutos. Esta ferramenta limita o texto a 10.000 caracteres para evitar esse problema.
Como referenciar um grupo capturado dentro da própria regex?
Use backreferences: \1 refere-se ao primeiro grupo, \2 ao segundo, etc. Exemplo — encontrar palavras duplicadas: \b(\w+)\s+\1\b.