El problema recurrente
Siempre que hacemos un formulario para solicitar datos de entrada necesitamos validar las entradas. Una de las formas más básicas para validar es mediante expresiones regulares. Este deberia ser una de las primeras etapas de validación.
Nunca tengo a mano un listado con las expresiones más comunes, asi que aca anoto 3 que son bastantes comunes. Están expresados para utilizar en javascript, pero son facilmente adaptables.
Fecha
^[0-9]{1,2}/[0-9]{1,2}/[0-9]{4}$
Mail
^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$
CUIT Argentina
El mejor para lo último. Agrego también la función para validar el dígito verificador.
^[0-9]{2}-[0-9]{8}-[0-9]$
function validarCUIT(cuit){
cuit = cuit.toString().replace(/[-_]/g, "");
var codigo_valido = true;
if(cuit.length != 11)
codigo_valido = false;
else {
/* Funcion de CUIT encontrada en internet */
var mult = [5, 4, 3, 2, 7, 6, 5, 4, 3, 2];
var total = 0;
for(var i = 0; i < mult.length; i++) {
total += parseInt(cuit[i]) * mult[i];
}
var mod = total % 11;
var digito = mod == 0 ? 0 : mod == 1 ? 9 : 11 - mod;
codigo_valido = digito != parseInt(cuit[10]);
}
return codigo_valido;
}
A medida que vaya utilizando nuevas, las voy a ir agregando.
Saludos!