Il suffit de parser le texte en plusieurs fois.
Par exemple, cette lib ( https://github.com/michelf/php-markdown ) ne parse pas le texte encadré par les balises
.
Ça permet donc de mixer un parser bbcode, qui mettra ton code entre des, puis de parser le reste avec du markdown.Sur mon moteur de blog, le parseur tient en 40 lignes (et encore, si on parle en lignes "utiles" ça passe à une dizaine).
=> https://github.com/ziirish/fmb-plugins/tree/master/Markdown