Tu dois définir tes propres règles, ex :
tout paragraphe contient du texte entre deux balises (mais certaines balises span, b, i, u ... sont exclues de cette règle)
second passage : dans un paragraphe trouvé à l'aide de la méthode précédente, toute suite de <br/> (slash optionnel) constitue une fin et un début de paragraphe. Si le paragraphe était <p>...<br/>...</p>, alors transformer en <p>...</p><p>...</p>
etc... A coup de transformations itératives tu vas y arriver.
Je te recommande à cette fin la lecture des fonctions preg_match_all, preg_replace, preg_replace_callback, strtr (avec un tableau de remplacement).
Good luck !
---------------
Directeur Technique (CTO)