Page 1 sur 1

expression reguliere REGEX?

Posté : 03 juil. 2008, 18:16
par speccy666
Bon! je m'arrache les cheveux depuis une heure avec les PREREG...

Quelqu'un peut il me donner la réponse SVP si je veux vérifier que la saisie de mon pseudo d'inscription $PSEUDO contienne uniquement des lettres et des chiffres.

PREREG(#[a-z][0-9]#,$pseudo) ne vérifie que si on a ces caractères dedans...

Merci à vous.

Posté : 03 juil. 2008, 18:23
par katagoto
if(preg_match(#^[a-zA-Z0-9]$#, $pseudo) echo "le pseudo n'est constitué que de caracètre alpha numérique";
Il y a une classe pour ça, mais je me souviens plus ^^'

Désolé :oops:

Posté : 03 juil. 2008, 18:25
par Shrell
l'expression que tu donnes vérifie uniquement que, dans ton pseudo, on a une suite "1 lettre-1chiffre"
Ce que tu veux c'est :
1) lettre ou chiffre => [a-z0-9]
2) plusieurs fois et au moins une => [a-z0-9]+
3) rien d'autre que ça (c'est à dire qui commence et qui finit par une lettre ou un chiffre) => ^[a-z0-9]+$

Si tu veux aussi mettre une contrainte sur le nombre de lettres, par exemple "le pseudo doit contenir entre 6 et 8 caractères" : ^[a-z0-9]{6,8}$

vala ;)

oups, grillé ^^

Posté : 03 juil. 2008, 23:16
par h0_noMan
Une expression régulière est une chaine de caractères donc pense au "

Posté : 03 juil. 2008, 23:33
par savageman
Et sinon il existe une fonction toute prête : ctype_alnum() ! Vachement plus mieux que les regex =)

Posté : 04 juil. 2008, 10:11
par katagoto
Oui, c'est mieu, mais tu devra te servir d'une autre fonction pour savoir si le pseudo n'est pas trop grand/petit, donc autant seservir des REGEX :lol: