Forums Últimos mensajes - Powered by IBM
 

validar formato cadenas editbox

06/10/2005 - 11:51 por Kano | Informe spam
Buenas
Necesito validar formato de cadenas insertadas en varios editbox,del
estilo de Nifs o matriculas.
Qu epuedo utilizar?

Gruacias
Kano
 

Leer las respuestas

#1 Diego \(DCD\)
06/10/2005 - 13:27 | Informe spam
A ver si esto te sirve, lo he sacado del proyecto de MSDN Vídeo, no he
probado si funcionan todavía utiliza el System.Text.RegularExpressions
(Expresiones regulares)

un saludo.

/// <summary>
/// Valida que el formato y letra del NIF son correctos

/// </summary>

/// <param name="cif">CIF a validar</param>

/// <returns>Verdadero si el CIF es correcto, falso en caso
contrario</returns>

private bool ValidarCIF(string cif)

{

int pares = 0;

int impares = 0;

int suma;

int ultima;

int numFinal;

string letras = "JABCDEFGHI";

int digitoImpar;

string cifUpper;


cifUpper = cif.ToUpper();

if(!Regex.IsMatch(cifUpper, @"^[ABCDEFGHKLMNPQS]\d{7}[0-9,A-J]$"))

return false;


ultima = cifUpper[8];

for (int i = 0; i<=4; i+=2)

{

digitoImpar = (cifUpper[i+1] - '0') * 2;

if(digitoImpar > 9)

{

impares ++;

digitoImpar = digitoImpar % 10;

}

impares += digitoImpar;

pares += (cifUpper[i+2] - '0');

}

impares += (cifUpper[7] - '0');


suma = pares + impares;

numFinal = (10 - (suma % 10)) % 10;


if ((ultima - '0' == numFinal) || (ultima == letras[numFinal]))

return true;

else

return false;

}

/// <summary>

/// Valida si el formato y letra del NIF son correctos

/// </summary>

/// <param name="nif">NIF a validar</param>

/// <returns>Verdadero si el NIF es correcto, falso en caso
contrario</returns>

private bool ValidarNIF(string nif)

{

string letras = "TRWAGMYFPDXBNJZSQVHLCKE";

int nifNum;

if(!Regex.IsMatch(nif, @"^\d{8}[TRWAGMYFPDXBNJZSQVHLCKE]$"))

return false;

nifNum = int.Parse(nif.Substring(0, nif.Length-1));

if(nif[8] == letras[nifNum % 23])

return true;

else

return false;

}






"Kano" escribió en el mensaje
news:
Buenas
Necesito validar formato de cadenas insertadas en varios editbox,del
estilo de Nifs o matriculas.
Qu epuedo utilizar?

Gruacias
Kano

Preguntas similares