Olá,
Preciso de uma expressão regular que valide Senhas fortes com 1 letra maiúscula, 2 letras minusculas, 2 números, um caracter especial e pelo menos 8 caracter
Tenho o seguinte método java que recebe uma String qualquer só que o meu problema está na expressão regular passada na constante abaixo
public static boolean validaPassword(final String password) {
Pattern p = Pattern.compile(EXPRESSAO_REGULAR_SENHA_FORTE);
Matcher m = p.matcher(password);
return m.matches();
}
- A seguinte expressão regular só valida se for dois números juntos por exemplo P25tlhm$ (Valída) e P2tl5hm$ (Inválida)
^(?=.[0-9]{2,})(?=.[a-z]{2,})(?=.[A-Z])(?=.[@#$%^&+=])(?=\S+$).{8,}$
- A seguinte expressão regular não considera 2 letras minusculas e 2 números
^.(?=.{8,})((?=.\d)(?=.[a-z]){2,})((?=.[a-z]){2,})(?=.[A-Z])(?=.[@#$%^&+=]).*$
- A seguinte expressão só verifica se tem 2 números e 2 letras, mas não estou conseguindo juntar com alguma das expressão acima
Expressao com no minimo 2 letras minusculas e 2 numeros
^(?=[a-z](?:\d[a-z]){2,}$)(?=\d*(?:[a-z]\d*){2,}$).*
Alguém poderia me ajudar por favor???
