Je ne sais pas comment sont faites les mises en forme des posts de yAronet, mais quand j'ai eu à faire ce genre de chose, je n'appliquais pas le résultat directement au texte. La première chose que j'ai faite a été de définir un nouveau type de balise pour contenir les informations de mise en forme. Par exemple {numéro} et je neutralise les balises déjà présentes avec {{} ou {0}. Ensuite, je cherche les éléments à transformer, par exemple :) devient {5} avec <img.../> à l'indice 5 d'un tableau. On peut définir les mises en forme à l'avance et juste placer des balises avec les bons numéros ou les définir au fur et à mesure, mais on peut se retrouver avec plusieurs fois la même chose. On peut aussi mélanger les deux : le tableau contient déjà tout ce qu'il faut pour les smileys, mais va grandir pour les balises vers les images extérieures. Bien sûr, il faut rechercher les éléments dans le bon ordre : image puis smileys pour éviter de se retrouver avec des smileys dans les adresses... et la balise est choisie de façon à ne jamais faire partie d'un élément reconnu. Par exemple, {} n'est pas utilisable si le smiley :{ existe. Le texte résultant est transformé pour pouvoir être affiché (donc on neutralise les balises HTML) et finalement, on remplace les balises par leur contenu et les balises neutralisées au début sont déneutralisées.
Voilà un post sans doute inutile, mais bon
