Dev Tools

Biblioteca de Regex Comuns

Presets de expressões regulares: e-mail, telefone BR e internacional, CPF, CNPJ, CEP, Pix, cartão, SSN, IPv4, IPv6, YouTube, HTML e mais. Teste no navegador e copie o padrão ou snippet para PHP, JavaScript, TypeScript, Python, Go, Java e C#.

Biblioteca de Regex Comuns

{{ regexPresetExampleText() }}

Flags alteram o comportamento do regex. Ex.: i ignora maiúsculas/minúsculas, g encontra todas as ocorrências e m trata múltiplas linhas.

Script pronto por linguagem

Gere o padrão atual com sintaxe e escapes adequados para colar no seu projeto.

{{ regexLibrary.message }}

Como usar Biblioteca de Regex Comuns

Stephen Kleene formalizou as expressões regulares em 1951 num paper seminal sobre autômatos finitos e redes neurais — na época, o objetivo era descrever matematicamente como circuitos elétricos e neurônios podiam reconhecer padrões. O nome expressão regular vem de sua notação de linguagens regulares, o tipo mais simples na hierarquia de Chomsky. A implementação computacional começou com Ken Thompson, o criador do Unix e do cron: em 1968 ele implementou regex no editor QED do Bell Labs, depois no editor `ed`, e em 1973 surgiu o `grep` — cujo nome vem do comando do `ed`: `g/re/p`, que significa global, expressão regular, imprimir. É impossível usar uma linha de comando Unix sem encontrar o grep, e ele continua sendo uma das ferramentas mais usadas por qualquer pessoa que trabalhe com texto e dados.

O ecossistema de regex tem dois galhos principais hoje: POSIX e PCRE. Henry Spencer escreveu a primeira biblioteca portável de regex em C em 1986, que virou a base do padrão POSIX. Em 1997, Philip Hazel escreveu a PCRE — Perl Compatible Regular Expressions — como uma biblioteca C reutilizável, porque o regex do Perl 5 tinha se tornado tão poderoso (grupos de captura nomeados, lookahead, lookbehind, substituições) que todo mundo queria ele. PHP, R e o Nginx nas diretivas de `location` usam PCRE. Python usa seu próprio módulo `re`, inspirado no Perl mas com diferenças sutis. O JavaScript usava seu próprio engine até o ECMAScript 2018, que finalmente adicionou grupos de captura nomeados e lookbehind — funcionalidades que o Perl tinha há décadas. Go adotou uma posição radicalmente diferente: usa RE2, que garante tempo linear de execução eliminando backtracking catastrófico, mas isso significa sem lookahead nem lookbehind.

Regex é aquele tipo de conhecimento que parece hieróglifos quando você encontra pela primeira vez, mas se torna quase viciante depois que aprende a ler com fluência. O problema é que padrões escritos sem comentários são notoriamente difíceis de manter — um regex de validação de IPv4 completo tem mais de 60 caracteres e é completamente opaco sem contexto. Para isso existem as flags de modo verbose no Python (`re.VERBOSE`) e o modo `x` no Ruby e PCRE, que permitem comentários inline. Esta biblioteca reúne os padrões mais usados no dia a dia — e-mail, CPF, CNPJ, CEP, telefone brasileiro e internacional, cartão de crédito, URL, IPv4, IPv6, data, hora — com casos de teste reais e snippets prontos para PHP, JavaScript, TypeScript, Python, Go, Java e C#. Use como ponto de partida: todo sistema tem suas próprias regras de validação, e um regex copiado sem revisão raramente cobre todos os casos de borda que você vai encontrar em produção.

Exemplo

^[^\s@]+@[^\s@]+\.[^\s@]+$

Perguntas frequentes

Para que servem as flags i, g e m no regex?

A flag i ignora maiúsculas e minúsculas. A flag g busca todas as ocorrências no texto (não só a primeira). A flag m faz com que ^ e $ considerem o início e fim de cada linha, não só da string inteira.

Este teste de match substitui validação no servidor?

Não. Expressões ajudam no frontend e em prototipagem, mas regras de negócio, segurança e formatos oficiais (por exemplo dígitos verificadores de CPF) devem ser validados também no backend com as políticas do seu sistema.

Como copio o padrão para PHP ou JavaScript?

Use o campo Regex para copiar só a expressão. Na seção Script pronto por linguagem, escolha PHP, JavaScript, TypeScript, Python, Go, Java ou C# e copie o snippet já com escapes e sintaxe adequados para colar no projeto.

Os presets de CPF ou cartão garantem número válido?

Eles validam em geral só o formato (máscara e caracteres). CPF, CNPJ e cartões exigem algoritmos de dígito verificador ou redes de pagamento: use esses regex como primeiro filtro e aplique validação completa onde for obrigatório.

Para que serve esta ferramenta?

Ela roda 100% no seu navegador: útil para validar, formatar ou converter dados no dia a dia de desenvolvimento.

Meus dados são enviados a algum servidor?

O processamento é feito localmente via JavaScript. Não armazenamos o conteúdo que você cola nas caixas de texto.

Posso usar em produção ou para dados reais?

Use por sua conta e risco. Para segredos (senhas, tokens), prefira ambientes controlados e políticas da sua empresa. E lembre sempre de revisar os conteúdos gerados. Nunca confie cegamente nas coisas que vê na internet.

Continue nas Dev Tools

Ferramentas relacionadas para acelerar tarefas comuns de desenvolvimento.