Page 1 sur 1

Convertir tableau wikicode en html

Posté : 11 juil. 2020, 00:15
par PixelReveur
Bonjour,

J'ai besoin de créer une fonction pour convertir du wikicode vers du html.
Je m'en sort pas trop mal mais les tableaux me posent pas mal de soucis...

En gros à partir de ce genre d'entrée :

Code : Tout sélectionner

{| CLASS="ClassTableau" |+ Contenu caption |- CLASS="ClassLigne1" | Contenu cellule 1 || Contenu cellule 2 |- CLASS="ClassLigne2" | CLASS="ClassCellule3" | Contenu cellule 3 | CLASS="ClassCellule4" | Contenu cellule 4 |- | CLASS="ClassCellule5" | Contenu cellule 5 | CLASS="ClassCellule6" | Contenu cellule 6 |}
Il me faut ressortir ce genre de code :

Code : Tout sélectionner

<table CLASS="ClasseTableau"> <caption>Contenu caption</caption> <tr CLASS="ClassLigne1"> <td>Contenu cellule 1</td><td>Contenu cellule 2</td> </tr><tr CLASS="ClassLigne3"> <td CLASS="ClassCellule3">Contenu cellule 3</td> <td CLASS="ClassCellule4">Contenu cellule 4</td> </tr><tr> <td CLASS="ClassCellule5">Contenu cellule 5</td> <td CLASS="ClassCellule6">Contenu cellule 6</td> </tr> </table>
Je me doute que ça va passer par du preg_replace mais j'ai du mal a sortir quelque chose de propre...

Quelqu'un à ce qu'il faut dans ses cartons ?

Merci :)

Re: Convertir tableau wikicode en html

Posté : 13 juil. 2020, 21:52
par two3d
Salut, oui en passant par une regex, il te faut déjà savoir quoi fait quoi:

ici on a "{|" pour commencer la table et "|}" pour la terminer
ensuite on a:
"|+" pour un caption
"|-" pour un tr
"|" pour un td

la regex serait du genre:
"#\{\|(ici on capture les tr et td)\|\}#"