Visualizador Regex Grátis: Testar e Depurar Expressões Regulares Online
35 usos
Email
URL
IPv4
Hex Color
Date
Phone
HTML Tag
Dicas Regex
Correspondências em tempo real
Digite padrão e texto. Correspondências destacadas com contagem e posições.
Flags disponíveis
Global (g), ignorar maiúsculas (i), multilinha (m), linha única (s).
Presets comuns
Email, URL, data, números, telefone, IP, tags HTML. Um clique.
Perguntas Frequentes
Tem presets?
Sim: email, URL, data, números e mais.
Como posso encontrar rapidamente padrões comuns como endereços IP ou URLs sem ter que escrevê-los do zero?
Você pode usar as predefinições integradas. Basta clicar no menu suspenso rotulado como 'Presets' (Predefinições). Em seguida, selecione uma opção como 'IPv4 Address' (Endereço IPv4) ou 'HTTP URL' (URL HTTP). A ferramenta preenche automaticamente o campo de entrada de regex com um padrão testado. É uma grande economia de tempo, especialmente para desenvolvedores freelancers que criam sites para clientes.
Por que minha regex corresponde quando não deveria?
Verifique se a flag 'g' está ativada. Sem ela, o motor para após o primeiro match, criando falsos positivos em validações. Por exemplo, /\d+/ contra "abc123def" sem 'g' mostra um resultado, e com 'g' também. A verdadeira causa é geralmente a falta de âncoras. Adicione ^ no início e $ no fim para forçar a correspondência na string inteira. Alterne as flags uma a uma para isolar o comportamento inesperado.
O visualizador de regex suporta asserções lookbehind?
Sim, asserções lookbehind funcionam aqui. Você pode usar as formas de comprimento fixo (?<=padrão) e (?<!padrão). Lookbehinds de comprimento variável como (?<=ab+) também são aceitos, pois o motor é JavaScript. Experimente o padrão (?<=@)\w+ para extrair nomes de usuário de e-mails. Uma dica: se não estiver correspondendo, verifique se a flag 'u' está ativada — alguns padrões Unicode precisam dela.
Existe uma maneira de ver passo a passo como minha regex corresponde à string de teste?
Sim, clique no botão 'Depurar' ao lado da área de teste. Isso divide o processo de correspondência caractere por caractere. Você verá o motor entrar e sair de cada token — quantificadores, grupos, classes de caracteres — um passo de cada vez. Por exemplo, teste /\d{3}-\d{4}/ contra '555-1234' para ver exatamente onde o motor faz backtracking. Isso é ouro quando você está depurando padrões complexos ou regras de validação de tokens JWT.
O que acontece se eu colar uma regex com backtracking catastrófico?
A ferramenta exibirá um aviso de tempo limite após cerca de 2 segundos. A string de teste fica cinza com a mensagem 'Padrão demorou muito'. Quantificadores aninhados como (a+)+b tentam todas as combinações possíveis. Clique em 'Parar' para abortar. Simplifique usando grupos atômicos (?>...) ou quantificadores possessivos. Um exemplo clássico: substitua (\d+)+ por \d+.
Posso compartilhar meus padrões regex e strings de teste com minha equipe?
Sim, basta copiar a URL da barra de endereços do seu navegador depois de inserir o regex e o texto de teste. Essa URL contém toda a sua sessão — padrão, flags, string de teste, tudo. Compartilhe com um colega e ele verá exatamente o que você vê. Ótimo para depuração em par ou revisões de código. Um porém: padrões muito longos deixam a URL pesada, então mantenha as strings de teste razoáveis.
Por padrão, regex diferencia maiúsculas de minúsculas?
Sim, sem a flag 'i', expressões regulares tratam letras maiúsculas e minúsculas como caracteres distintos. Por exemplo, /hello/ não encontrará correspondência com 'Hello' nem 'HELLO' na sua string de teste. Ative a flag 'i' para ignorar caixa alta e baixa — as três variações aparecerão destacadas. Muita gente acredita que regex é case-insensitive por padrão, mas não é. Sempre verifique o painel de flags. Dica rápida: selecione o preset 'IPv4' e veja como as flags alteram o comportamento.
O destaque é atualizado em tempo real enquanto digito?
Sim, ele muda a cada tecla pressionada. A string de teste reage instantaneamente, sem precisar clicar em botão nenhum. Esse feedback ao vivo acelera muito a depuração de padrões. Para desenvolvedores backend lidando com JSON, dá para ajustar uma regex e ver o resultado contra respostas de API em menos de um segundo. Cuidado: strings de teste acima de 10 000 caracteres podem causar um leve atraso. Quebre grandes conjuntos de dados em pedaços menores.
Por que meu regex funciona na ferramenta, mas falha quando colo no código JavaScript?
Normalmente é uma diferença de flags. A ferramenta usa 'g' por padrão, mas seu código pode estar usando new RegExp(pattern) sem flags. Adicione 'g' para igualar o comportamento. Outro vilão: as barras. Se copiou /\d+/g de um tutorial, as barras são sintaxe do JavaScript, não fazem parte do padrão. Copie direto do campo de entrada. E confira espaços no final da string—são invisíveis e quebram o match sem dar erro.
Como Usar
- Digite padrão regex
- Insira texto de teste
- Correspondências em tempo real
- Ative flags
- Use presets