Testador de Regex
Teste expressões regulares em relação ao texto e veja todas as correspondências destacadas. Essencial para desenvolvedores que trabalham com correspondência de padrões, validação de dados ou processamento de texto. Depure e refine seus padrões de regex em tempo real com feedback visual que mostra exatamente o que corresponde à sua expressão.
Perguntas frequentes
Uma expressão regular é uma sequência de caracteres que define um padrão de pesquisa. O Regex é usado para localizar, combinar e manipular texto com base em padrões em vez de cadeias exatas. É incrivelmente eficiente para tarefas como validação de endereços de e-mail, extração de dados de texto, operações de localização e substituição e análise de arquivos de registro.
Digite o padrão regex no campo de padrão e cole o texto de teste na área de texto. A ferramenta destacará todas as correspondências em tempo real, mostrando exatamente o que o padrão captura. Se nada for destacado, seu padrão não está correspondendo. Use esse feedback visual para refinar o padrão até que ele corresponda exatamente ao que você precisa.
Os sinalizadores mais comuns são: 'g' (global) localiza todas as correspondências em vez de apenas a primeira, 'i' (case-insensitive) ignora diferenças entre maiúsculas e minúsculas, 'm' (multiline) faz com que ^ e $ correspondam a inícios/finais de linha em vez de apenas inícios/finais de cadeia de caracteres, e 's' (dotall) faz com que . corresponda a caracteres de nova linha. Combine sinalizadores como 'gi' para correspondência global sem distinção entre maiúsculas e minúsculas.
Para e-mail: tente /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/ para validação básica. Para URLs: /https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)/ works for most cases. Observe que a validação perfeita de e-mail/URL é extremamente complexa - esses padrões lidam com os casos mais comuns.
O ponto (.) corresponde a qualquer caractere. O asterisco (*) significa "zero ou mais vezes", enquanto o sinal de mais (+) significa "uma ou mais vezes". Portanto, .* corresponde a zero ou mais de qualquer caractere (inclusive não corresponde a nada), enquanto .+ requer pelo menos um caractere para corresponder. Por exemplo, 'a.*b' corresponde a 'ab' ou 'a123b', mas 'a.+b' corresponde apenas a 'a123b'.
Por padrão, os quantificadores como *, + e {n,m} são gananciosos - eles correspondem ao máximo possível. Adicione um ponto de interrogação (?) após o quantificador para torná-lo não ambicioso (preguiçoso), correspondendo o mínimo possível. Por exemplo, no texto '<div>hello</div><div>world</div>', /<div>.*<\/div>/ corresponde à cadeia de caracteres inteira (greedy), enquanto /<div>.*?<\/div>/ corresponde a cada tag separadamente (non-greedy).
Os grupos de captura usam parênteses () para extrair partes específicas de uma correspondência. Por exemplo, /user-(\d+)/ captura a ID numérica do usuário. O valor capturado pode ser acessado na maioria dos idiomas usando grupos de correspondência. Use (?:...) para grupos sem captura quando precisar de agrupamento para quantificadores, mas não quiser capturar o valor.
Cole amostras de entradas de log na área de string de teste e crie padrões para extrair registros de data e hora, endereços IP, códigos de status ou mensagens de erro. O destaque visual mostra exatamente o que corresponde, ajudando-o a refinar os padrões antes de implantá-los em ferramentas de análise de log, como Logstash, Splunk ou scripts personalizados.
Lookaheads (?=...) e lookbehinds (?<=...) afirmam que existe um padrão à frente ou atrás sem incluí-lo na correspondência. Por exemplo, /\d+(?= dollars)/ corresponde a números seguidos de ' dollars', mas captura apenas o número. Lookaheads negativos (?!...) e lookbehinds negativos (?<!...) afirmam que o padrão NÃO existe.
Sim! Teste padrões regex para validação de formulários, como números de telefone, códigos postais, cartões de crédito ou formatos personalizados. O feedback visual ajuda a garantir que seus padrões de validação aceitem corretamente entradas válidas e rejeitem entradas inválidas antes de implementá-los em seu aplicativo.
