MarvinLeRouge Posté 15 Janvier 2007 Posté 15 Janvier 2007 Salut, J'ai un petit problème avec preg_replace : je souhaite remplacer dans un texte le texte correspondant à certaines balises html (chevrons encodés) par de vraies balises. Exmple : remplacer dans $texte le motif <p( attributs éventuels)>contenu</p> par <p(attributs éventuels>contenu</p> Mon problème consiste à repérer correctement les paragraphes, identifier la fermeture de balise correspondant bien à la balise d'ouverture, par exemple si on a plusieurs paragraphes à la suite.
Darklg Posté 24 Janvier 2007 Posté 24 Janvier 2007 $texte=str_replace('<','<',$texte);$texte=str_replace('>','>',$texte); quelque chose comme ça ?
Dan Posté 25 Janvier 2007 Posté 25 Janvier 2007 S'il ne s'agit pas que de décoder les paragraphes, mais aussi les autres balises, tu peux utiliser html_entity_decode() qui fait exactement l'inverse de html_entity(). Dan
MarvinLeRouge Posté 25 Janvier 2007 Auteur Posté 25 Janvier 2007 Mon problème réside essentiellement là-dedans : a) je veux éviter que les gens puissent mettre n'importe quel code html, donc je remplace par défaut tous les < et > par des < et > je veux autoriser CERTAINES balises, donc remplacer CERTAINS blocs <balise attributs>contenu</balise> par <balise attributs>contenu</balise> Je suis à peu près sûr qu'il doit exister une méthode simple pour ça, mais je ne suis pas terrible en expressions régulières.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant