/ / Modification d’une expression rationnelle qui n’est pas la mienne, ne sachant pas comment l’ajuster aux besoins - php, regex, string-length

Modification d’une expression rationnelle qui n’est pas la mienne, ne sachant pas comment l’ajuster aux besoins - php, regex, string-length

J'ai un regex qui a été écrit pour moi pour les mots de passe:

~^[a-z0-9!@#$%^&*()]{8,16}$~i

Il est supposé correspondre aux chaînes de caractères alphanumériqueset des symboles de 8 à 16 caractères. Maintenant, je dois supprimer les exigences de longueur minimale et maximale, car je dois diviser les messages d'erreur pour plus de facilité d'utilisation. J'ai essayé de supprimer la partie {8,16}, mais elle a été supprimée. Comment je ferais ça? Merci d'avance.

Réponses:

2 pour la réponse № 1

Je suppose que vous effectuez des vérifications séparées pour des chaînes trop longues ou trop courtes, et cette expression régulière s’assure seulement qu’il n’ya pas de caractères non valides. Cela devrait le faire:

~^[a-z0-9!@#$%^&*()]+$~i

+ veux dire un ou plus, * veux dire zéro ou plus; peu importe le type que vous utilisez.

Je me suis également débarrassé de quelques barres obliques inutiles; aucun de ces caractères n'a de signification particulière dans une classe de caractères (c'est-à-dire entre crochets).