Expression reguliere - Version imprimable +- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org) +-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38) +--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51) +--- Sujet : Expression reguliere (/showthread.php?tid=4577) |
Expression reguliere - Wells - 06-02-2010 Bonjour à tous, j'aimerais savoir si qq'un sais pour quoi ce code me renvoie 1 (vraie) Code PHP :
Moi pas comprendre RE: Expression reguliere - azerwhite - 06-02-2010 Tu sais que les ereg sont deprécié tu devrais utiliser les preg_match! De plus, je pense que si tu nous disons ton but cela permettrait de mieux ce mettre en jambe! Sinon pour ta question http://fr2.php.net/manual/fr/function.ereg.php voici la page de php manual que tu dois connaitre! Perso, ca fait bizarre de voir un espace entre les caractères majuscules et les minuscules! et je vois pas à quoi te serve les crochets ici! Le vrai doit correspondre au faite qu'il trouve bien bien les caractères de ton pattern dans ta string que tu envoies en para . . . mais cette string ne devrait pas être une variable ? azerwhite RE: Expression reguliere - julp - 06-02-2010 Je ne vois pas ce qu'il y a de bizarre dans le résultat obtenu dans la mesure où il est demandé de trouver un caractère parmi ceux-ci : ABCDEFGHIJKLMNOPQRSTUVWXYZÉÈÊËÔÖÎÏÛÜÙÂÄÀÇ abcdefghijklmnopqrstuvwxyzéèêëôöîïûüùâäàç dans la chaîne d'origine. Manque-t-il les ancres et une précision quand au nombre d'occurrence attendu ? Code : echo preg_match('~^[A-ZÉÈÊËÔÖÎÏÛÜÙÂÄÀÇ a-zéèêëôöîïûüùâäàç]+$~D', 'gdf4') ? 'TRUE' : 'FALSE'; PS : à voir, mais avec une locale adéquate, il devrait être possible de simplifier l'expression (~[[:alpha:] ]+~Di). RE: Expression reguliere - azerwhite - 07-02-2010 Preg_match ne retourne qu'une fois! C'est preg_match_all qui permet de regrouper tous les occurrences dans un tableau RE: Expression reguliere - julp - 07-02-2010 Ok, je crois que je n'ai pas pigé le but. Si c'est de la validation, preg_match est parfaitement adapté (strict équivalent, non déprécié, d'ereg). Par contre, si c'est pour compter le nombre de caractères compris dans cette classe, preg_match_all est bien une solution. RE: Expression reguliere - Wells - 08-02-2010 J'avais effectivement oublier le +. j'ai résolut mon soucie via cette chaine: ereg("^[A-ZÉÈÊËÔÖÎÏÛÜÙÂÄÀÇ a-zéèêëôöîïûüùâäàç]+$",$_POST[login]) je vérifie que la chaine ne soit composé que des caractères donner dans l'expr reg. ais je tt bon? ^^ RE: Expression reguliere - azerwhite - 08-02-2010 Tiens je ne sais pas si tu connais mais ça permet de tester les exp rég: http://www.annuaire-info.com/outil-referencement/expression-reguliere/ RE: Expression reguliere - srm - 08-02-2010 Moi je préfère http://gskinner.com/RegExr/ RE: Expression reguliere - azerwhite - 09-02-2010 (08-02-2010, 10:52 PM)oxman a écrit : Moi je préfère http://gskinner.com/RegExr/Oui, mais le flex c'est long à charger sur la machine du boulot ! mauahahahahah |