← Recursos RESOURCE
Dicas práticas e armadilhas ao validar entradas como e-mail, telefone e CEP com expressões regulares.

Na validação de formulários, as expressões regulares se adaptam bem a entradas de formato regular. Para verificar se a string inteira corresponde ao formato, é preciso fixar as duas pontas com ^ e $. Sem âncoras, mesmo que só uma parte da string combine ela passa, e a validação fica furada. É possível usar a mesma expressão regular também no atributo pattern do input do HTML.

Valores com quantidade de dígitos e tipo de caractere definidos, como telefone, CEP e nome de usuário, precisam apenas de classes de caracteres e quantificadores. Mas, se você estreitar demais a regra, acaba bloqueando variações válidas, como ligações internacionais, novos sistemas de CEP ou a presença ou não de hífen. Observe antes a diversidade dos dados reais.

Não tente validar e-mail de forma perfeita com expressões regulares. A especificação oficial (RFC 5322) é complexa demais para reproduzir com uma expressão regular de uso prático. Confira de forma frouxa apenas se há @ e ponto, e valide a real validade enviando um e-mail de confirmação — essa é a abordagem correta.

A validação por expressão regular no navegador serve apenas para a comodidade do usuário (UX), não é a última linha de defesa. Valide sempre de novo no servidor e, com entradas não confiáveis, cuidado com o backtracking catastrófico (ReDoS) (veja o texto sobre desempenho nos Recursos).