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

  FORUM HardWare.fr
  Programmation
  PHP

  Ecrire un parser rudimentaire

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Ecrire un parser rudimentaire

n°1516077
-ThX-
Not here anymore
Posté le 18-02-2007 à 01:28:57  profilanswer
 

Bonjour à toutes et à tous.
 
Pour mon site, j'ai besoin d'écrire un parser rudimentaire ( bbcode simplifié ).
 
Etant ignare sur le sujet, comment dois-je m'y prendre ? Etant donné que je n'aurai pas de "bbcode à paramètres", est-ce que je peux éviter de me taper un cours sur les regex ? exemple :
Je n'aurai pas de balise [ size = nn ] mais plutot [ titre ], [ ss-titre ] etc...
 
Le but, vous l'aurez compris, est de ne pas avoir à me farcir un fichier .php à chaque inclusion de page.
 
Merci de vos avis éclairés.

mood
Publicité
Posté le 18-02-2007 à 01:28:57  profilanswer
 

n°1516078
-ThX-
Not here anymore
Posté le 18-02-2007 à 01:59:45  profilanswer
 

Après quelques recherches et quelques modifs, je reste la dessus:
 

Code :
  1. function parseBbcode($text, $classe = '')
  2. {
  3.         // $classe : classe CSS utilisée pour les liens.
  4.         // [img], [url], [url=]
  5.     $text = preg_replace("#\[img\]((ht|f)tp://)([^\r\n\t<\"]*?)\[/img\]#sie", "'<img src=\\1' . str_replace(' ', '%20', '\\3') . '>'", $text);
  6.     $text = preg_replace("#\[url\]((ht|f)tp://)([^\r\n\t<\"]*?)\[/url\]#sie", "'<a class='$classe' href=\"\\1' . str_replace(' ', '%20', '\\3') . '\" target=blank>\\1\\3</a>'", $text);
  7.     $text = preg_replace("/\[url=(.+?)\](.+?)\[\/url\]/", "<a class='$classe' href=$1>$2</a>", $text);
  8.  
  9.         // Fragments de code source
  10.     $text = preg_replace("#\[code\](.+?)\[\/code\]#s", "<div class='code'><pre class='code'>$1</pre></div>", $text);
  11.         // Gras, Italique, Souligné
  12.     $text = preg_replace("#\[b\](.+?)\[\/b\]#", "<b>$1</b>", $text);
  13.     $text = preg_replace("#\[i\](.+?)\[\/i\]#", "<i>$1</i>", $text);
  14.     $text = preg_replace("#\[u\](.+?)\[\/u\]#", "<u>$1</u>", $text);
  15.         // Fin du parser
  16.     return $text;
  17. }


 
Si ca sert a quelqun, tant mieux, en tous cas mon problème est résolu


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

  Ecrire un parser rudimentaire

 

Sujets relatifs
Ecrire du Php dans un fichier créé par fwriteecrire dans xml à l'aide de JavaScript.
libre/écrire un port USB[PHP] Ecrire dans un fichier: gestion du retour à la ligne
[Java & XML] Parser SAX : comment ajouter un tag au cours du parsing ?Parser du XML en PHP
Que faut-il ecrire pour ecrire sur des ports tels que usb, rs232 ?parser d'expression dans un logiciel
Comment ecrire un mail en HTMLcomment ecrire dans une table à partir d'un formulaire?
Plus de sujets relatifs à : Ecrire un parser rudimentaire


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