Je travaille sur une application Rails 3 qui doit valider le mot de passe en fonction des critères suivants: must be at least 6 characters and include one number and one letter.
Valider Mot de passe utilisant l'expression rationnelle
Voici mon Regex:
validates :password, :format => {:with => /^[([a-z]|[A-Z])0-9_-]{6,40}$/, message: "must be at least 6 characters and include one number and one letter."}
En ce moment, si je mets un mot de passe de (par exemple: dogfood) il passera. Mais ce dont j'ai besoin, c'est de passer les critères ci-dessus.
Je ne suis pas tout ce grand à regex, donc toute aide est grandement appréciée!
wow, qui fonctionne parfaitement! Merci beaucoup! Pouvez-vous expliquer un peu les assertions de lookahead? – dennismonsewicz
Lookaheads attendons avec impatience un motif, ici il cherchera depuis le début pour n'importe quoi (.) 0 fois ou plus suivi de [a-zA-Z] et même avec [0-9]. Lookaheads ne va pas en avant donc vous serez toujours à la position 0 quand il s'agit de. {0,6} qui va vérifier la longueur de 6+ – netigger
Voir la réponse éditée pour l'explication. Mais @ DavidEverlöf merci d'ajouter une explication plus en profondeur. –