g global
i sem distinção de caixa
m multiline (^ e $ por linha)
s dotAll (. casa com newline)
u unicode
Testador de Regex — Depurador Gratuito de Expressões Regulares Online
O que esse testador faz?
Digite um padrão, digite uma string de teste, e cada correspondência destaca em tempo real. O painel Grupos de Captura mostra o que cada (…) capturou, incluindo grupos nomeados. Alterne os flags g, i, m, s e u na toolbar; o resultado atualiza a cada mudança. Quando o padrão é inválido, a mensagem de erro do motor JavaScript aparece na status bar para você identificar o erro de digitação sem chutar.
Como usar
- Digite um padrão regex no input da toolbar.
- Alterne os flags (g, i, m, s, u) ao lado do padrão.
- Coloque sua string de teste no painel da esquerda. As correspondências destacam ao vivo.
- Veja cada correspondência e grupo de captura no painel da direita.
- Escolha um preset (Email, URL, IP, Hex, Data, Telefone) para carregar um exemplo funcional, ou clique em um token da Referência Rápida para inseri-lo no padrão.
Perguntas Frequentes
Qual é a diferença entre as flags g, i, m, s e u?
g (global) continua procurando após a primeira ocorrência, mostrando todas as correspondências em vez de apenas uma. i (case-insensitive) faz [A-Z] também corresponder a minúsculas. m (multiline) faz ^ e $ corresponderem ao início e fim de cada linha, não da string inteira. s (dotAll) faz . corresponder a quebras de linha. u (unicode) ativa o tratamento completo de Unicode — necessário para \p{Emoji} ou caracteres astrais.
Por que meu padrão falha com 'invalid regular expression'?
Geralmente um caractere especial não escapado ou um grupo não fechado. Colchetes e parênteses precisam estar balanceados: (foo, [a-z, foo) geram erro. Barras invertidas precisam ser duplicadas dentro de literais de string JavaScript ao copiar do código. A ferramenta mostra a mensagem de erro do motor JavaScript para você ver exatamente o que falhou.
O que são grupos de captura?
Tudo entre (parênteses) é capturado separadamente e exibido no painel Capture Groups. Use para extrair partes de uma correspondência — por exemplo, /(\d{4})-(\d{2})-(\d{2})/ captura ano, mês e dia. Use (?:…) para agrupar sem capturar e (?<nome>…) para grupos nomeados.
Esta ferramenta suporta regex PCRE ou Python?
Ela usa o motor de regex do JavaScript (ECMAScript), próximo do PCRE mas não idêntico. Lookbehind funciona em navegadores modernos. Grupos nomeados usam a sintaxe (?<nome>…). Padrões recursivos e grupos condicionais do PCRE não são suportados. Para a maioria dos padrões do dia a dia, o comportamento é igual ao do Python ou PCRE.
Isto envia meu regex ou texto de teste a um servidor?
Não. O regex é compilado e executado no seu navegador usando o motor RegExp nativo do JavaScript. Nada sai do seu dispositivo.