Bonjour,
J'ai une regex fonctionnelle, en JS ne n'est aucun problème avec.
Par contre en PHP, outre le fait qu'il convertie "€" en "€\" dans ma regex, alors que le code "normal" c'est "€" et je pense que c'est pour l'antislash qu'il rajoute qui fout la merde.
Voici ma regex :
"/^(?=.{1,}[a-z])(?=.{2,}[A-Z])(?=.{1,}[0-9])(?=.{1,}[&#@=$%*?/:!-+])([a-zA-Z0-9&#@=$%*?\\/:!\\-+]){8,}\$/"
Regex dans PHP :
"/^(?=.{1,}[a-z])(?=.{2,}[A-Z])(?=.{1,}[0-9])(?=.{1,}[&#@=€\$%*?/:!-+])([a-zA-Z0-9&#@=€\$%*?\\/:!\\-+]){8,}\$/"
preg_match me renvoie FALSE, donc une erreur lors de l’exécution, je ne comprends pas comment contourner le problème.
Je vous mets quand le code :
1 2 3 4
|
$pattern = $regex->regexMdp($result); //récupération de la regex généré
$pattern = "/".$pattern."/"; //ajout des delimiteurs (non utilise en JS)
$ok=preg_match($pattern,$value); |
J'espère que vous aller pouvoir m'aider, car la je sèche complètement.
Partager