|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | |||
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 16 ![]() |
Bonjour.
Je débute avec les expressions régulières. Je souhaite supprimer, en fin de chaine de texte, tout caractere '.' (point) suivi de [zero, un ou plusieurs] espaces. Par exemple, avec ce traitement, la chaine : Citation:
Citation:
Je vois que $ signifie en fin de chaine, je rajoute '.' pour dire que je cherche le caractere . avec en suite '\s*' pour dire suivi de 0 , 1 ou plusieurs espaces. je fais donc : Citation:
et j'obtiens ... rien ! Pouvez-vous m'expliquer mon erreur? Merci |
|||
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Antoine DinimantConsultant en Business Intelligence Inscription : octobre 2006 Messages : 5 854 ![]() |
Par définition, la fin de chaîne n'est suivie de rien...
Par ailleurs le point doit être échappé \. ou bien placé dans une classe [.] Donc : Code :
echo preg_replace('\s*\.$','',$chaine); |
|
|
00
|
|
|
#3 | |
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 16 ![]() |
Merci Antoun.
J'ai mieux compris l'usage du $ Par contre ca ne marche toujours pas : Citation:
|
|
|
|
00
|
|
|
#4 | ||
![]() ![]() ![]() Antoine DinimantConsultant en Business Intelligence Inscription : octobre 2006 Messages : 5 854 ![]() |
Désolé, j'ai oublié d'encadrer ma regex :
Code :
|
||
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 16 ![]() |
Merci, ca marche très bien, par contre je n'ai pas compris l'utilité des / en début et en fin.
|
|
|
00
|
|
|
#6 |
![]() ![]() ![]() Antoine DinimantConsultant en Business Intelligence Inscription : octobre 2006 Messages : 5 854 ![]() |
pas d'utilité particulière... mais avec les preg_, il faut encadrer la regex par //, ou autre caractères.
|
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 16 ![]() |
Merci pour ce complément d'information.
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com