O que faz
O Explicador de Regex transforma uma expressão regular em uma análise token a token em linguagem clara. Cada token - âncora, classe de caracteres, quantificador, grupo, escape, alternância ou literal - ganha a sua própria linha mostrando o fragmento exato e o que ele casa, além de uma contagem de tokens e uma explicação de cada flag que você definir. Padrões inválidos mostram o próprio erro do engine JavaScript em uma caixa de erro vermelha, em vez de quebrar a página. Ótimo para aprender regex ou decifrar uma que você encontrou em um código. 100% no cliente; nada é enviado a lugar algum.
Como usar
- Digite um Padrão (sem delimitadores). A análise atualiza enquanto você digita.
- Opcionalmente, defina as Flags - o campo aceita
g i m s u d y; qualquer outro caractere é removido. - Ou toque num chip de exemplo - Email, Date capture, URL, Lookahead - para carregar um padrão pronto com as flags correspondentes.
- Leia o relatório à direita (fixo no desktop): uma linha por token, o selo de contagem de tokens no topo e cada flag ativa com o seu significado.
- Copiar análise copia a explicação completa como texto simples; a barra de endereço sempre carrega o seu padrão (
?p=e?f=), então copiar a URL compartilha a visão exata.
Regex inválido (por exemplo, um [ não terminado) mostra a mensagem de erro do engine - Invalid regular expression: missing terminating ] for character class para [ - com um selo Invalid, e nunca lança exceção.
Exemplos
Todas as explicações abaixo são a saída real da ferramenta para cada entrada.
Padrão tipo telefone - ^\d{3}-\d{4}$ com a flag g (o Sample embutido, 7 tokens):
| Token | Explicação |
|---|---|
^ |
start of the string (or line with /m) |
\d |
a digit [0-9] |
{3} |
quantifier - repeat 3 time(s) |
- |
the literal “-” |
\d |
a digit [0-9] |
{4} |
quantifier - repeat 4 time(s) |
$ |
end of the string (or line with /m) |
Flag g → global - find all matches.
Padrão tipo e-mail - [a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-z]{2,} com as flags gi (o chip Email, 8 tokens), trecho:
[a-zA-Z0-9._%+-]→match any of: a-zA-Z0-9._%+-+→quantifier - 1 or more times (greedy)@→the literal "@"\.→an escaped literal "."{2,}→quantifier - repeat 2, time(s)- Flag
i→case-insensitive
Captura de data - (\d{4})-(\d{2})-(\d{2}) (o chip Date capture, 5 tokens): três linhas de capturing group (para (\d{4}), (\d{2}), (\d{2})) separadas por duas linhas de the literal "-".
Lookahead - \d+(?=px) (o chip Lookahead, 3 tokens): a digit [0-9], quantifier - 1 or more times (greedy), depois (?=px) → lookahead assertion (positive).
Bom saber
- Referência de flags (cada flag mostra o seu significado ao lado da letra):
gglobal - find all matches ·icase-insensitive ·mmultiline (^ and $ match line boundaries) ·sdotAll - “.” matches newlines ·uunicode ·ysticky - match at lastIndex ·dindices - expose match boundaries. - Suporta a sintaxe
RegExpdo JS; extensões de outros engines (classes POSIX,\p{...}semu) podem ser analisadas de forma diferente. - Privado: a análise é inteiramente local, no seu navegador.
- Ferramentas relacionadas: Regex Tester (executa correspondências ao vivo), Find & Replace, JSON to TypeScript.