J'essaie de créer un test Regex en JavaScript qui testera si une chaîne contient l'un de ces caractères :
!$%^&*()_+|~-=`{}[]:";'<>?,./
Plus d'informations si vous êtes intéressé :)
C'est pour une application de changement de mot de passe assez sympa sur laquelle je travaille. Au cas où vous seriez intéressés, voici le reste du code.
J'ai un tableau qui liste les exigences en matière de mot de passe et lorsque l'utilisateur final tape le nouveau mot de passe, il teste un tableau de Regex et place une coche dans la ligne correspondante du tableau s'il... se vérifie :) J'ai juste besoin d'ajouter celle-ci à la place du 4ème élément de la table validation
de la gamme.
var validate = function(password){
valid = true;
var validation = [
RegExp(/[a-z]/).test(password), RegExp(/[A-Z]/).test(password), RegExp(/\d/).test(password),
RegExp(/\W|_/).test(password), !RegExp(/\s/).test(password), !RegExp("12345678").test(password),
!RegExp($('#txtUsername').val()).test(password), !RegExp("cisco").test(password),
!RegExp(/([a-z]|[0-9])\1\1\1/).test(password), (password.length > 7)
]
$.each(validation, function(i){
if(this)
$('.form table tr').eq(i+1).attr('class', 'check');
else{
$('.form table tr').eq(i+1).attr('class', '');
valid = false
}
});
return(valid);
}
Oui, il y a aussi une validation correspondante côté serveur !