REGEX tout con.. mais probleme

REGEX tout con.. mais probleme - PHP - Programmation

Marsh Posté le 15-03-2006 à 10:44:15    

Salut ;)
 
Je cherche a faire un regex pour valider un champs de formulaire (en l'occurence un login)
ce login doit etre composé au minimum de 2 caractères.
il est composé des lettre de a à z de A à Z, de chiffres de 0 à 9 et des caractères -_. (tiret, underscore, point et espace)
 
voici ce que j'ai essayé :

Code :
  1. regex = "[a-zA-Z0-9.-_ ]{2,}"


 
Or, si j'écris des caracteres du genre : éàè$&' etc, ma moulinette les laisse passer (le regex ne marche donc pas)
Où est le probleme ?
 
ps:je me sert de ce regex en php et javascript, est-ce la meme syntaxe?
 
merci de votre aide

Reply

Marsh Posté le 15-03-2006 à 10:44:15   

Reply

Marsh Posté le 15-03-2006 à 10:51:50    

bixibu a écrit :

Salut ;)

Code :
  1. regex = "[a-zA-Z0-9.-_ ]{2,}"


Or, si j'écris des caracteres du genre : éàè$&' etc, ma moulinette les laisse passer (le regex ne marche donc pas)
Où est le probleme ?


Bin si tu as la chaine "aaéàè$&" il est normal que ta regex "laisse passer". On trouve effectivement bien 2 lettres "convenables". [:spamafote]
Si tu veux que ce champs ne contienne que ça, rajoute un ^ au début et un $ à la fin:

Code :
  1. $regex = '^[a-zA-Z0-9.-_ ]{2,}$';


 
 

bixibu a écrit :

ps:je me sert de ce regex en php et javascript, est-ce la meme syntaxe?merci de votre aide


Vi s'pareil!!!

Reply

Marsh Posté le 15-03-2006 à 10:56:33    

Ah Ok je comprend mieu, j'avais oublié ca :p
 
Faut dire que c'était mon tout premier regex lol, ca excuse rien je sais ;)
 
Merci pour ton aide c'est parfééé

Reply

Marsh Posté le 15-03-2006 à 14:45:30    

anapajari a écrit :

Vi s'pareil!!!


Non !!!!  
Ca n'est pas du tout pareil !!
 
PHP se base sur les propriétés POSIX, Javascript a les siennes, des expressions qui marcheront en JS ne marcheront peut etre pas en PHP !

Reply

Marsh Posté le 15-03-2006 à 15:13:41    

the_bigboo a écrit :

Non !!!!  
Ca n'est pas du tout pareil !!
 
PHP se base sur les propriétés POSIX, Javascript a les siennes, des expressions qui marcheront en JS ne marcheront peut etre pas en PHP !


 :jap: c'est pas tout a fait pareil... ;)  
Juste une précision néanmoins en php ereg->posix et preg->PCRE
 

Reply

Marsh Posté le 15-03-2006 à 15:41:55    

Question de rigueur :d

Reply

Marsh Posté le 15-03-2006 à 21:15:37    

regex = '[a-zA-Z0-9._ -]{2,}'
le - doit être placé en fin de classe.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed