Que ce soit phpWiki, MoinMoin, wikini ou même wiki2xhtml, je me suis aperçu que ces 4 moteurs de wiki (et certainement d'autres) ont un gros défaut : ils ne produisent pas à coup sûr du (x)html correct.

En fait, ils ont tous un bug, au niveau de l'interpretation du balisage wiki. Admettons que je veuille utiliser les balises wiki pour faire une emphase et une emphase forte (prenons //mot// et **mot** comme balisage par exemple ), et que je les chevauche comme ceci :

ceci  //est un **texte// balisé** wiki.

J'obtiens alors :

ceci <em>est un <strong>texte</em> balisé</strong> wiki.

Ce qui est totalement invalide !

Ces moteurs reposent tous sur la recherche/remplacement par expression régulière. Et le problème, est que je n'arrive pas du tout à trouver une expression régulière qui evite ce genre de désagrément. Je ne vois qu'une solution : ne pas utiliser les expressions régulières, mais parser lettre à lettre chaque ligne de texte (au moins pour les balises wiki de type inline). Mais bon, pas cool, pas élégant, pas forcément performant...

Une autre solution ?