lunes, 24 de septiembre de 2012

Expresión regular para validar contraseña de usuario

Esta expresión regular limita al usuario ingresar una contraseña cumpliendo con ciertos estándares o políticas de seguridad, como son letras minúscula, mayúsculas, digitos y caracteres especiales. 
En este ejemplo la función recibe como parámetro la cadena de texto a validar y devuelve True si cumple con la expresión regular (Entre 7 a 30 caractéres, al menos que contenga un letra minúscula, una mayúscula y un dígito.), de lo contrario retorna False.

En VB:
_______________________________________________________________________________________
Importar la libreria

 Imports System.Text.RegularExpressions


 Public Function ValidarContraseniaUsuario(ByVal contraseniaUsuario As String) As Boolean
        Dim sPatternmail As String = "^(?!.*(.)\1{3})((?=.*[\d])(?=.*[a-z])(?=.*[A-Z])|(?=.*[a-z])(?=.*[A-Z])(?=.*[^\w\d\s])|(?=.*[\d])(?=.*[A-Z])(?=.*[^\w\d\s])|(?=.*[\d])(?=.*[a-z])(?=.*[^\w\d\s])).{7,30}$"
        Dim validar As Boolean = System.Text.RegularExpressions.Regex.IsMatch(contraseniaUsuario, sPatternmail)
        Return validar
    End Function

En C#:
_______________________________________________________________________________________

Using System.Text.RegularExpressions

public bool ValidarContraseniaUsuario(string contraseniaUsuario)
{
 String sPatternmail = "^(?!.*(.)\1{3})((?=.*[\d])(?=.*[a-z])(?=.*[A-Z])|(?=.*[a-z])(?=.*[A-Z])(?=.*[^\w\d\s])|(?=.*[\d])(?=.*[A-Z])(?=.*[^\w\d\s])|(?=.*[\d])(?=.*[a-z])(?=.*[^\w\d\s])).{7,30}$"
bool validar = System.Text.RegularExpressions.Regex.IsMatch(contraseniaUsuario, sPatternmail);
return validar;
}

No hay comentarios:

Publicar un comentario