Testador de expressões regulares
Escreva uma expressão regular e veja o que ela encontra, enquanto digita.
Digite o padrão sem as barras, ou cole um /padrão/flags inteiro.
Cole o texto, abra um arquivo ou solte um aqui
Colinha
- \d
- Um dígito, 0–9
- \w
- Uma letra, dígito ou sublinhado
- \s
- Um espaço, tab ou quebra de linha
- .
- Qualquer caractere, exceto quebra de linha
- ^
- Início do texto (ou da linha, com m)
- $
- Fim do texto (ou da linha, com m)
- *
- O item anterior, 0 ou mais vezes
- +
- O item anterior, 1 ou mais vezes
- ?
- O item anterior, opcional
- {n,m}
- O item anterior, entre n e m vezes
- [abc]
- Qualquer um entre a, b ou c
- (…)
- Um grupo, capturado como $1, $2, …
- (?<name>…)
- Um grupo nomeado, capturado como $<name>
- a|b
- O lado esquerdo ou o lado direito
Próximo: Comparador de textos · Formatador de JSON
Relatar um problema com esta ferramenta
Como usar Testador de regex
Digite seu padrão
Digite a expressão regular sem as barras, ou cole um /padrão/flags inteiro, e marque as flags de que precisa.
Adicione um texto de teste
Cole texto ou abra um arquivo. Cada correspondência é destacada, com a posição e os grupos listados abaixo.
Substitua ou copie
Marque Substituir para testar uma substituição com $1 ou $<name>, e depois copie o resultado ou a própria regex.
Por que usar o Utils365
Grupos num relance
Cada correspondência mostra seus grupos numerados e nomeados, para você conferir o que $1 ou $<year> vai conter.
Protegido contra padrões descontrolados
A busca roda em segundo plano com limite de um segundo, então um padrão que faz backtracking sem fim não trava a página.
O mesmo motor do seu código
Usa o motor de regex JavaScript do seu navegador, então os resultados batem com o que o Node.js e o navegador vão fazer.
Privacidade garantida
Seu padrão e seu texto ficam no seu navegador. Nada é enviado, então dá para testar com arquivos de log e dados de clientes.
Perguntas frequentes
Qual sabor de regex é usado?
JavaScript (ECMAScript), o mesmo dos navegadores e do Node.js. A maioria dos padrões funciona igual em outras linguagens, mas lookbehind, grupos nomeados e alguns escapes mudam em motores mais antigos.
O que fazem as flags g, i, m, s, u e y?
g encontra todas as correspondências, i ignora maiúsculas e minúsculas, m faz ^ e $ valerem em cada linha, s deixa . pegar quebras de linha, u ativa o suporte completo a Unicode e y faz cada correspondência começar onde a anterior terminou.
Como uso um grupo de captura na substituição?
Escreva $1, $2 e assim por diante para grupos numerados, $<name> para grupos nomeados e $& para a correspondência inteira. Para inserir um cifrão de verdade, escreva $$.
Por que diz que meu padrão demorou demais?
Alguns padrões, como (a+)+ contra uma string longa, tentam um número enorme de combinações antes de desistir. Isso se chama backtracking catastrófico. Deixe as repetições aninhadas mais específicas para resolver.
Por que só vejo uma correspondência?
Sem a flag g, uma expressão regular para na primeira correspondência. Marque Global (g) para encontrar todas.
Como encontro um ponto ou colchete literal?
Coloque uma barra invertida antes: \. encontra um ponto e \[ encontra um colchete. O mesmo vale para outros caracteres especiais como * + ? ( ) { } | ^ e $.