cnpjcpf.
Código · Regex

Regex de CPF

Expressões regulares para validar o formato de um CPF — com e sem máscara. O CPF é sempre numérico, com 11 dígitos.

Antes de tudo: regex valida só o formato (quantos dígitos, onde vão os pontos). Ela não confere o dígito verificador — para isso, use o módulo 11 ou o validador.

CPF com e sem máscara

Regex
# com máscara: 123.456.789-09
^\d{3}\.\d{3}\.\d{3}-\d{2}$

# só dígitos: 12345678909
^\d{11}$

Aceitar com OU sem máscara

Para um campo que aceite as duas formas, o caminho mais simples é limpar a pontuação antes de testar:

JavaScript
const RE_CPF = /^\d{11}$/;
const clean = entrada.replace(/[.\-]/g, '');
RE_CPF.test(clean); // só confere o formato

Se preferir uma única regex tolerante à máscara opcional:

Regex
^\d{3}\.?\d{3}\.?\d{3}-?\d{2}$
publicidade

Depois do regex, valide o dígito

Passou no formato? Então confira o dígito verificador — é isso que rejeita um número digitado errado. Veja validar CPF em JavaScript.

E o CNPJ?

O CNPJ tem 14 caracteres e, a partir de 2026, pode ter letras. A regex é diferente — veja regex de CNPJ.

Padrões de formato (não validam o dígito verificador). Para validação completa, use o módulo 11. Revisado em 06/2026.