Friday, May 04, 2012

Como validar la entrada del cif nif nie con expresiones regulares en c#

He encontrado rutinas que hacen la validación exacta de estos datos. Pero estaba yo interesado en una rutina que validara el documento de identidad utilizando expresiones regulares, así que a falta de alguna he desarrollado la mía propia. Aclaro que esta solo valida que los datos introducidos correspondan al patrón de un documento de identidad, es como por ejemplo la validación de un correo electrónico introducido que puedes validar que tenga la forma correcta pero puede que ese correo electrónico no exista, para la validación completa ya existen varias rutinas desarrolladas pero en mi caso solo me hacía falta comprobar el formato.

        bool EsValidoCifNifNIE(string docIdentitat)
        {
            string patron = "[A-HJ-NP-SUVW][0-9]{7}[0-9A-J]|\\d{8}[TRWAGMYFPDXBNJZSQVHLCKE]|[X]\\d{7}[TRWAGMYFPDXBNJZSQVHLCKE]|[X]\\d{8}[TRWAGMYFPDXBNJZSQVHLCKE]|[YZ]\\d{0,7}[TRWAGMYFPDXBNJZSQVHLCKE]";
            string sRemp = "";
            bool ret = false;
            System.Text.RegularExpressions.Regex rgx = new System.Text.RegularExpressions.Regex(patron);
            sRemp = rgx.Replace(docIdentitat, "OK");
            if (sRemp == "OK") ret = true;
            return ret;
        }

1 comment:

proves said...
This comment has been removed by the author.