Regex e correspondência de padrões

Testador de Regexcom capturas visíveis

Digite o padrão sem delimitadores /. Espaços e quebras de linha são preservados; um padrão vazio é válido.

Testador de Regex

Padrão

Digite (cat), não /cat/g, e coloque g no campo próprio. O texto não é aparado. O editor ou a área de transferência pode normalizar quebras de linha; não é um teste de arquivos byte a byte.

Texto de teste

Resultado

Digite ou execute um teste manual.

Padrão e texto são processados em um Worker local do navegador, sem envio ao servidor.

Opções

Use cada flag uma vez. u e v são incompatíveis. Sem g, correspondência, substituição e extração usam só o primeiro resultado.

Flags suportadas neste navegador: Detectando navegador…
  • d — Incluir índices de captura.
  • g — Buscar todas as correspondências; não altera split.
  • i — Ignorar caixa conforme JavaScript.
  • m — ^ e $ reconhecem limites de linha.
  • s — O ponto inclui finais de linha.
  • u — Sintaxe Unicode e pontos de código.
  • v — Conjuntos Unicode; incompatível com u.
  • y — Só corresponde em lastIndex; cada execução começa em 0.

Identificação do navegador: Detectando navegador…. É o agente de usuário informado, não a versão exata do motor.

Limites UTF-16: texto 100000, padrão 2000, substituição 10000, saída substituída 1000000, relatório 4000000. Máximo de 10000 itens; exceder faz a execução inteira falhar. Tempo: 2 segundos.

Digite ou execute um teste manual.

Só uma substituição atual, com Unicode válido e até 100000 unidades UTF-16 pode virar entrada. Confira e aplique; desfazer restaura entrada, opções e resultado.

O Testador de Regex ajuda a revisar logs com várias linhas, nos quais g, m e s resolvem problemas diferentes. Buscar todas as ocorrências não é o mesmo que ancorar cada linha ou permitir que o ponto atravesse uma quebra de linha.

Para testar expressões regulares, copie um pequeno trecho de log com linhas que devem e não devem corresponder. Ao conferir regex online, use os grupos de captura para separar horário e mensagem antes de buscar e substituir algum campo.

Por que usar este Testador de Regex

Relacionar padrão e saída

Conferir o campo capturado

O Testador de Regex mostra a correspondência inteira e suas capturas separadamente. Números, nomes e posições UTF-16 ajudam a conferir qual campo será reaproveitado na substituição.

Uma correspondência inteira envolve duas capturas coloridas, com setas para os respectivos cartões de detalhes.

Comparar uma substituição com todas

Sem g, só a primeira ocorrência muda; com g, todas mudam. Compare os dois resultados no mesmo texto e confirme a prévia antes de usar a substituição como entrada.

Duas linhas comparam a substituição da primeira ocorrência com a substituição das três ocorrências.

Relacionar padrão e saída

01

Digitar o padrão real

Digite (cat), não /cat/g, e coloque g no campo próprio. O texto não é aparado. O editor ou a área de transferência pode normalizar quebras de linha; não é um teste de arquivos byte a byte.

  • Escolha o exemplo, confira as mudanças e aplique.
02

Escolher a execução

Busque cat em cat cat e retire g: dois resultados viram um. O modo automático espera 350 ms; sem ele, use Ctrl/Cmd+Enter. split não segue a restrição da primeira correspondência.

  • Use cada flag uma vez. u e v são incompatíveis. Sem g, correspondência, substituição e extração usam só o primeiro resultado.
03

Conferir o relatório completo

Diferencie null de "": grupo não participante ou captura vazia. A lista cresce de 50 em 50, mas o relatório JSON mantém todos os resultados aceitos.

  • Só uma substituição atual, com Unicode válido e até 100000 unidades UTF-16 pode virar entrada. Confira e aplique; desfazer restaura entrada, opções e resultado.

Quatro operações no texto

Correspondências e grupos

Com (Ada) (Lovelace), Ada Lovelace é a correspondência inteira e os grupos 1 e 2 são campos separados. d acrescenta intervalos; lookbehind pode capturar fora do intervalo completo.

Buscar e substituir com prévia

(?<year>\d{4})-(?<month>\d{2}) com $<month>/$<year> muda 2026-09 para 09/2026. Compare g com a substituição única antes de aplicar a alteração.

Extrair um grupo escolhido

Para ID:(\d+), o grupo 1 extrai 42 de ID:42, enquanto 0 mantém tudo. A existência do grupo só é verificada quando há correspondências; uma seleção ausente então causa erro.

Dividir com separadores capturados

Dividir a,b com (,) produz ["a", ",", "b"]. O separador capturado permanece. Com (,)|(;), grupos não participantes acrescentam null; strings vazias não são filtradas.

Comportamento e limites

Somente JavaScript do navegador
Somente o JavaScript RegExp nativo do navegador é executado. Confira PCRE e Python no ambiente de destino. As flags são detectadas, mas o agente de usuário do relatório não é uma versão exata do motor.
Correspondências vazias e Unicode
Texto e padrão vazios são válidos. A abertura e Limpar deixam o teste em espera. Buscas globais de largura zero avançam por ponto de código com u/v, senão por unidade UTF-16. Índices UTF-16 começam em 0, com fim exclusivo. Índices de captura precisam de d; capturas em lookbehind podem ficar fora da correspondência inteira.
Resultados completos com limites
Limites UTF-16: texto 100000, padrão 2000, substituição 10000, saída substituída 1000000, relatório 4000000. Máximo de 10000 itens; exceder faz a execução inteira falhar. Tempo: 2 segundos.
Preservar as strings
JSON escapa as strings e preserva surrogates isolados. TXT só é oferecido para substituições com Unicode bem formado. A prévia pode parar em 20000 unidades UTF-16; a exportação bem-sucedida continua completa.
Notas limitadas e alterações reversíveis
Notas léxicas limitadas, sem análise completa, IA ou avaliação de desempenho. Classes, escapes desconhecidos e estruturas complexas tornam o sufixo restante opaco. Só uma substituição atual, com Unicode válido e até 100000 unidades UTF-16 pode virar entrada. Confira e aplique; desfazer restaura entrada, opções e resultado.

Dúvidas sobre o Testador de Regex

O conteúdo digitado sai do navegador?

Não. O Testador de Regex executa todas as operações no Worker do navegador. Padrões e textos não são enviados ao servidor. Não há upload, leitura de URL nem compartilhamento público do conteúdo.

Para que serve g na expressão?

g permite encontrar todas as correspondências, em vez da primeira, nas operações de busca, substituição e extração. A divisão com split não depende dessa flag e inclui os separadores capturados no array.

Quais exemplos são úteis no trabalho diário?

Os exemplos incluem endereços de e-mail, datas com grupos nomeados, separadores capturados, letras Unicode e posições vazias. São amostras para entender o comportamento; a expressão de e-mail não é uma validação completa de endereços.

Por que um padrão aparentemente correto não encontra resultados?

Confira se ponto e outros símbolos foram escapados quando deveriam ser literais. Verifique também i para diferenças de caixa e m ou s para linhas. g muda a quantidade de resultados, mas não transforma uma ausência de correspondência em acerto.

Qual engine executa o teste?

O motor é o RegExp nativo de JavaScript do navegador. As flags suportadas são detectadas no momento. A identificação do navegador no relatório não deve ser confundida com uma versão exata do motor.

Ainda tem dúvidas?

Experimente o Testador de Regex

Use o Testador de Regex com datas ou letras Unicode e adapte o exemplo ao seu texto.

Confira o relatório JSON completo antes de levar a substituição para o código.

Por padrão, o teste roda 350 ms após editar. Desative o modo automático para usar o botão ou Ctrl/Cmd+Enter. Alterações bloqueiam imediatamente exportações desatualizadas.