Bonjour à tous
je voulais savoir
[:alpha:]
[:alnum:]
...
s'utilise avec quelles fonctions
Bonjour à tous
je voulais savoir
[:alpha:]
[:alnum:]
...
s'utilise avec quelles fonctions
Les fonctions POSIX (ereg*), dépréciées, comme celles de l'extension PCRE (preg_*). A noter que pour ces dernières, elles doivent apparaître dans une classe (ie [[:alpha:]] par exemple).
pour ereg apparement il faut utiliser [[:alpha:]]
Quand j'utilise [:alpha:] ça ne passe pas avec les lettres accentuées. Comment je dois les inclure simplement.
ereg('[[:alpha:]]',$val);
Si $val='ééé' par exemple ça me renvoie false.
merci
- Les fonctions ereg*, comme je l'ai dit, sont dépréciées : il est vivement conseillé d'utiliser l'extension PCRE ;
- Les fonctions ereg*, contrairement à celles de l'extension PCRE, ne tiennent pas compte des locales donc [:alpha:] est le strict équivalent à [a-zA-Z] excluant tous nos caractères accentués. Les fonctions preg_* devraient en revanche, inclure les caractères accentués, si vos locales sont configurés en ce sens.
j'ai tout compris merci, mais j'ai toujours un probleme
preg_match('[[:alpha:]]',$val);
me renvoie un warning :
Warning: preg_match() [function.preg-match]: Compilation failed: POSIX named classes are supported only within a class at offset 0 in test_script.php on line 52
merci de votre patience
Il vous manque les délimiteurs de début/fin de motif (puisqu'il vous prend vos premier/dernier crochets pour remplir cette fonction) :
Ces délimiteurs sont indispensables puisque l'on peut placer des options à la fin du motif. A peu près n'importe quel caractère peut faire office de délimiteur. Il est cependant judicieux d'écarter tout métacaractère et tout caractère figurant dans ce motif (car il devra alors être échappé).
Code : Sélectionner tout - Visualiser dans une fenêtre à part preg_match('~[[:alpha:]]~',$val);
Pour approfondir le sujet : Initiation aux expressions régulières en PHP.
Partager