Teste expressões regulares de JavaScript com destaque ao vivo e uma explicação em linguagem simples
Funciona no seu navegador. Nada do que você digita é enviado a lugar nenhum.Testar uma expressão regular mostra o que ela encontra enquanto você digita, com cada grupo de captura destacado e uma leitura do padrão em linguagem simples. É muito mais rápido do que rodar um script de novo para descobrir por que o grupo 1 está vazio. Funciona com regex de JavaScript, e seu texto fica no navegador.
Esta página foi traduzida automaticamente do original em inglês. Nenhuma pessoa revisou ainda a tradução; a versão em inglês é a que deve ser considerada. Ler o original em inglês
Digite o padrão em Padrão, entre as barras, e ative as flags g, i, m, s, u e y.
Cole o texto a ser pesquisado em Texto de teste; cada correspondência é destacada enquanto você digita.
Veja na aba Correspondências cada correspondência, seu índice e seus grupos de captura.
Abra Substituir, digite uma substituição como $1 ou $<name> e copie o resultado.
Abra Explicar para ler cada parte do padrão em linguagem simples.
Este testador de regex aplica seu padrão a um texto de exemplo enquanto você digita e destaca cada correspondência. Uma tabela lista cada correspondência com sua posição e o texto capturado por cada grupo numerado e nomeado, e uma caixa de substituição mostra o resultado de String.replace com sua substituição, incluindo as referências $1 e $<name>.
As pessoas recorrem a ele quando uma regra de validação rejeita uma entrada que deveria aceitar, ou quando uma busca em logs retorna demais. Dois casos comuns: conferir se um padrão para códigos PIN da Índia aceita 560001 mas não 56001, e descobrir por que .* engoliu meia linha quando você queria só o primeiro valor entre aspas.
O testador usa o motor JavaScript do seu navegador, então as flags g, i, m, s, u e y se comportam exatamente como no seu código Node.js ou front-end. Outras variantes, como PCRE, Python e Java, diferem em alguns pontos (quantificadores possessivos, flags inline), então teste essas na própria linguagem. Seu padrão e seu texto nunca saem do seu dispositivo.
O painel de explicação divide o padrão em partes, em linguagem simples: classes de caracteres, quantificadores, âncoras, grupos, alternância, escapes e lookarounds. Ele também avisa quando um grupo repete algo que já se repete, como (a+)+, o que pode travar uma página com um texto que quase corresponde. A busca roda em um worker em segundo plano com limite de tempo, então um padrão assim é interrompido e informado em vez de travar seu navegador. Ferramentas relacionadas: Diff Checker, URL Encoder.
Sim. Não há cadastro nem limite de quantos padrões você testa. A página é mantida por alguns poucos anúncios exibidos fora da ferramenta, nunca dentro dela.
JavaScript, pelo próprio motor RegExp do seu navegador. Os resultados batem com o que você obtém em Node.js, Deno e código front-end. Regex de PCRE, Python e Java diferem em alguns recursos, como quantificadores possessivos e flags inline, então confira essas na própria linguagem.
Coloque parte do padrão entre parênteses, por exemplo (\d{4}), ou dê um nome com (?<year>\d{4}). A tabela de correspondências mostra cada grupo numerado e nomeado de cada correspondência, e mostra uma célula vazia quando um grupo não participou.
O padrão levou mais que o limite de tempo no seu texto, geralmente por backtracking catastrófico: um grupo repetido que contém outra repetição, como (a+)+ ou (\w+\s?)*. Torne a parte interna mais específica ou remova uma das repetições.
Digite a substituição na caixa Substituir. Use $1, $2 para grupos numerados, $<name> para grupos nomeados e $& para a correspondência inteira. Ative a flag g para substituir todas as correspondências em vez de só a primeira.
Não. O padrão roda em um worker em segundo plano dentro do seu navegador. Nada do que você digita é enviado a um servidor, então é seguro testar com logs ou dados que contêm informações pessoais.
Ainda com dúvidas? Pergunte sobre Testador de expressões regulares e qualquer pessoa que saiba pode responder. Não é preciso ter conta.