|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre à l'essai
![]() Inscription : novembre 2006 Messages : 111 ![]() |
Bonjour,
Je veux créer un regex qui va chercher ce genre de caractère: "Un mot 789" on ne sais jamais quelle est le chiffre à la fin, mais on sais que ca commence toujours par "Un mot". L'espace entre les 2 peut être différent et ca peut être une tabulation merci |
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() Inscription : octobre 2003 Messages : 2 714 ![]() |
Salut,
Ceci t'aide ? : \s représente un espace, une tabulation, etc \d représente un chiffre. Si tu as un nombre indéfini de chiffre, il faut faire autrement.. A+
__________________
K |
|
|
00
|
|
|
#3 |
|
Membre à l'essai
![]() Inscription : novembre 2006 Messages : 111 ![]() |
et si j'ai plus d'un espace entre le mot et les chiffre, comment je peut interpreter plusieurs espaces ?
|
|
|
00
|
|
|
#4 |
|
Expert Confirmé
![]() Inscription : octobre 2003 Messages : 2 714 ![]() |
__________________
K |
|
|
00
|
|
|
#5 |
|
Membre à l'essai
![]() Damien Ravé Inscription : septembre 2005 Messages : 20 ![]() |
\s* : l'opérateur * signifie "zéro ou plusieurs"
Donc si je ne m'abuse <un>\s<mot>\s*\d\d\d Perso, je me suis affiché la PHP Cheat sheet de ilovejackdaniels.com à côté du bureau. Il reprend toute la syntaxe des Regex et autres joyeusetés. Bon courage |
|
00
|
|
|
#6 |
|
Membre à l'essai
![]() Inscription : novembre 2006 Messages : 111 ![]() |
et c'est vraiment des <> qui entour les mot recherchés ?
voici l'erreur que j'ai Warning: preg_match_all() [function.preg-match-all]: No ending delimiter '^' found in...... |
|
|
00
|
|
|
#7 |
|
Membre à l'essai
![]() Inscription : novembre 2006 Messages : 111 ![]() |
donc j'aurais ceci ?
$sep='^<mon>\s<mot>\s+[0-9]$'; |
|
|
00
|
|
|
#8 |
|
Membre expérimenté
![]() Inscription : septembre 2006 Messages : 685 ![]() |
Non, les < et > font foirer ta regex puisqu'il ne sont pas contenu dans ta chaine, et les options de début et fin de chaine également, puisque tu utilises un preg_match_all.
Code php :
preg_match_all('#mon mot\s+\d+#', $chaine, $match); |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com