Déterminer une fin de paragraphe dans un texte - PHP - Programmation
Marsh Posté le 10-09-2011 à 11:08:45
D'un point de vue purement sémantique xhtml, un paragraphe se trouve entre <p>...</p>.
Marsh Posté le 10-09-2011 à 12:06:17
Merci pour la réponse et je suis d'accord sur le principe en xhtml, mais en html 5 et avec des entrées réalisées par n'importe quel utilisateur, le contrôle n'est pas strict.
On doit pouvoir tester aussi, les <hx>, et d'autres joyeuseté qui constituent un bloc.
Curieux qu'il n'existe pas une extension de class Document par exemple pour cela.
Marsh Posté le 11-09-2011 à 13:49:37
A si c'est du thml 5 .... Mais qu'est ce que tu entends par "extension de class Document" ?
Comment deviner les conventions aléatoire de tes users ? T'as essayé la détection de <br><br> ?
Marsh Posté le 15-09-2011 à 00:35:53
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 !
Marsh Posté le 15-09-2011 à 09:47:18
Un § doit se trouver au min entre 2 balises de type "block" (en sont donc exclues les balises de type "inline" )
Marsh Posté le 09-09-2011 à 18:15:55
Bonjour,
je cherche à déterminer une fin de paragraphe dans un texte, mais les textes étant écrits par divers auteurs, il peut exister plusieurs solutions de fin de paragraphe. Le but de la manipulation est d'intégrer une image entre deux paragraphes.
Comme parfois un exemple est plus parlant qu'un discours : http://www.aquaportail.com/fiche-p [...] -rufa.html
Chaque fiche de présentation d'une espèce est accompagnée d'une photo en en-tête du contenu. J'aimerais que cette image ne soit plus en en-tête, mais après le premier paragraphe (dans ce cas précis, après "sa notoriété grandir." )
Comment détecter proprement une fin de paragraphe? On recherche les balises "br", "p", "div" mais aussi les \n par exemple?
Merci d'avance du coup de pouce.
---------------
Jef - Une passion : l'aquariophilie et l'aquascaping en aquarium d'eau de mer pour un bon maintien des animaux.