Question

Je crée un système d'enregistrement qui doit vérifier le nom / pass, etc. avec REGEX (et préfèrent), ce que j'ai à ce jour est:

//Check so numbers aren't first, such as 00foobar
preg_match('/^(?!\d)[a-z0-9]+$/iD',$usrname);
//Just simple check
preg_match('/^[a-zA-Z0-9]+$/',$psword);

Mais je dois faire des choses stupides dans une instruction IF comme:

if strlen($psword) > 30 || if (strlen($psword) < 4) ....

Comment puis-je impliment le contrôle de longueur dans mes deux déclarations d'expressions régulières d'origine? Cela me ferait tellement heureux ..

Était-ce utile?

La solution

même mais en utilisant le \ w et \ d pour mot et chiffres, mais vous pouvez également inclure des symboles de base comme %!?/ ... etc...

preg_match('/^[\w\d]{4,30}$/',$psword);

la {n,v} permettrait de valider, pour n minimum et le maximum des éléments v avant.

comme A{2,3} validerait pour AA et AAA. vous pouvez jeter un oeil il plus de références

Sur la même façon si vous voulez seulement régler le minimum de Patern {n,} le ferait. Par exemple:

preg_match('/^[\w\d]{4,}$/',$psword);

Autres conseils

Je pense que cela devrait faire l'affaire:

  

preg_match ( '/ ^ [a-zA-Z0-9] {} $ 4,30 /', psword de $);

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top