
Uma expressão regular (regex) é um padrão compacto para correspondência de texto — validar um e-mail, extrair datas, encontrar todas as URLs em um arquivo de log. O problema é que regex é famosamente implacável: um único caractere mal posicionado pode fazer um padrão não corresponder a nada, corresponder demais, ou corresponder à coisa errada. Escrever um padrão às cegas e jogá-lo direto no código de produção é a receita para bugs sutis.
Testar regex online resolve isso. Você cola um texto de exemplo, digita seu padrão e vê instantaneamente o que corresponde e o que não corresponde — destacado, caractere por caractere. Não há etapa de compilação, sem print statements, sem precisar executar todo o programa para verificar um padrão. Você itera em segundos.
A maioria dos padrões do dia a dia é construída a partir de um pequeno conjunto de elementos:
cat corresponde ao texto "cat".[abc] corresponde a qualquer um de a, b ou c. [0-9] corresponde a qualquer dígito, [a-z] a qualquer letra minúscula.\d é qualquer dígito, \w qualquer caractere de palavra, \s qualquer espaço em branco. Suas versões maiúsculas os negam.* significa zero ou mais, + um ou mais, ? zero ou um, e {2,4} entre duas e quatro vezes.^ corresponde ao início de uma linha, $ ao fim. Elas fixam um padrão no lugar em vez de deixá-lo corresponder em qualquer posição.( ) agrupam partes e as capturam para extração.Correspondendo a um número de telefone dos EUA: o padrão \d{3}-\d{3}-\d{4} corresponde a "415-555-0199" — três dígitos, um hífen, três dígitos, um hífen, quatro dígitos. Teste-o contra "ligue para 415-555-0199 hoje" e você verá exatamente o número de telefone se destacar.
Extraindo um ano: \b(19|20)\d{2}\b encontra anos de quatro dígitos começando com 19 ou 20, com delimitadores de palavra para não corresponder a parte de um número maior.
Validando um e-mail simples: ^[\w.+-]+@[\w-]+\.[\w.-]+$ cobre o formato comum de um endereço. A validação de e-mail no mundo real é notoriamente complexa, por isso testar com muitos exemplos de entrada é fundamental antes de confiar em um padrão.
.* captura o máximo possível. Para corresponder ao menor trecho, use a forma preguiçosa .*?. Um testador mostra a diferença imediatamente em texto com múltiplas correspondências.\., caso contrário . corresponde a qualquer caractere. O mesmo vale para parênteses, colchetes e o sinal de mais.^ e $, um padrão de "validação" pode corresponder a uma substring válida dentro de uma entrada inválida.O fluxo de trabalho confiável é incremental: escreva uma pequena parte do padrão, confirme que ele corresponde e depois adicione a próxima parte. Testar online mantém esse ciclo ágil porque o feedback é instantâneo e você pode colar exatamente os casos extremos que lhe interessam — a string vazia, a entrada malformada, o valor incomum mas válido.
Abra o testador de regex online gratuito — digite um padrão, cole seu texto de teste e veja correspondências destacadas ao vivo com grupos de captura. Sem cadastro, funciona inteiramente no seu navegador.