Receitas

Regex para datas: DD/MM/AAAA e os limites do calendário

Datas mostram claramente a diferença entre validar formato e validar significado. Regex pode exigir dois dígitos, barras e quatro dígitos, mas isso não garante que o dia exista no calendário.

Antes de começar: teste cada padrão com exemplos que devem passar e exemplos que devem falhar.

Formato DD/MM/AAAA

Para uma regra estritamente estrutural, use dois dígitos para dia e mês e quatro para ano.

Regex: ^\d{2}\/\d{2}\/\d{4}$\nAceita formato: 31/12/2026\nTambém aceitaria formato: 99/99/9999

Por que 99/99/9999 passa

\d{2} só sabe que existem dois dígitos; não sabe que meses vão de 01 a 12 ou que fevereiro tem regras próprias.

Valide calendário em código

Para sistemas reais, converta a entrada para um tipo de data e verifique se a biblioteca conseguiu construir uma data válida. Regex pode continuar responsável apenas pela forma esperada.

Datas ISO

Para integrações e APIs, YYYY-MM-DD é comum e evita ambiguidades regionais. A escolha do formato deve vir do contrato do sistema, não da Regex.

Próximo passo: teste de verdade

Use o Playground para experimentar a expressão e depois pratique no jogo com feedback de falsos positivos e falsos negativos.

Praticar no jogoTestar no Playground

Continue aprendendo

← Voltar ao hub