Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1246 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] preg_replace et les retours à la ligne ...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] preg_replace et les retours à la ligne ...

n°131523
- Fred -
007 Agent
Posté le 26-04-2002 à 21:46:32  profilanswer
 

Voici le pattern que j'utilise :
preg_replace('/(\[table=)([^\]]*)\](.*?)(
\[\/table\])/',<table><tr><td>\\2</td><
/tr><tr><td>\\4</td></tr></table> );
 
Ca marche assez bien quand j'utilise une ligne du type :
[table=TEST]blablabla[/table]
 
Par contre, si je mets un retour à la ligne entre les deux ça ne marche plus :
[table=TEST]
blablabla
[/table]
 
Comment faire en sorte que ça marche ?!?


---------------
"You know the name, You know the number..."
mood
Publicité
Posté le 26-04-2002 à 21:46:32  profilanswer
 

n°131525
- Fred -
007 Agent
Posté le 26-04-2002 à 22:02:44  profilanswer
 

Je viens de trouver ... en fait il faut remplacer .*? par [^\]]* et voilà ...
 
Pattern final : '/(\[table=)([^\]]*)\]([^\]]*)(\[\/table\])/'


---------------
"You know the name, You know the number..."
n°131532
- Fred -
007 Agent
Posté le 26-04-2002 à 22:25:39  profilanswer
 

Par contre j'ai un autre pb : dès que j'intercale des balises ça ne marche plus correctement.
 
Par exemple ceci :
[table][/table]
 
Marche parfaitement, par contre ceci :
[table]
[title]TEST[/title]
[content]lalalal[/content]
[/table]
 
Ne me remplace pas [table] ni [/table] ... une petite astuce ?


---------------
"You know the name, You know the number..."
n°131540
j-'-r
Sans horraires fixe
Posté le 26-04-2002 à 22:55:39  profilanswer
 

j ai jamais pigé le preg_replace j utilise toujours le str_replace que je maitrise

n°131542
- Fred -
007 Agent
Posté le 26-04-2002 à 22:58:42  profilanswer
 

Oui mais à ce stade, str_replace ne suffit plus. Je n'utilise pas preg_replace par masoshisme :D
 
Quelques liens :
Des RegEx tout prêts : http://www.phpinfo.net/?p=prog&rub=regex
Un petit tutorial : http://www.phpinfo.net/?p=articles&rub=regex


---------------
"You know the name, You know the number..."
n°131555
Tentacle
Posté le 26-04-2002 à 23:43:13  profilanswer
 

- Fred - a écrit a écrit :

 
Ne me remplace pas [table] ni [/table] ... une petite astuce ?  




 
Essaie en mettant la lettre 's' après le dernier '/' de ton expression régulière. Cela permet que PCRE interprète le point comme tout les caractères, y compris le retour chariot alors quand sans le 's', le retour chariot n'y est pas.
 
Regarde ici :
http://www.php.net/manual/fr/pcre. [...] ifiers.php


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] preg_replace et les retours à la ligne ...

 

Sujets relatifs
Php dans html ok, mais html dans balises php ça marche ?PHP - prereg avec sprintf ?
[PHP-Mysql]Avoir l'id d'un enregistrement quon vient de stocker[PHP] Formulaire et modification tps réel de formulaire
[JS+PHP]mailto avec un texte dans le message de plus d'une ligne[PHP] Petite question
[PHP ou JS?] Vérifier si un lien entré existe!...Comment avez-vous appris le PHP
PhP, fonction headerCompression HTTP avec PHP
Plus de sujets relatifs à : [PHP] preg_replace et les retours à la ligne ...


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR