Bonjour,
Je tente de me dépatouiller avec 2 regex. Ayant passé la soirée dessus, je fais appel aux pros !
Contexte : je récupère du fichier HTML, généré de X façons (wysiwyg, word, open office...). Bref je voudrai nettoyer un peu le tout et barrer la route aux petits malins
la 1ère regex :
je cherche à whitelister certaines balises. Celles qui ne sont pas dedans sont effacées ainsi que le contenu entre ces balises.
La 2ème :
même fonction que la première sauf que si le texte analysé est prefixé de balise CODE (comme ici) alors tout passe dans une sorte de htmllenties. De cette façon le code s'affiche mais n'est pas exécuté
Le but : Au final tout cela me ressort un fichier HTML en un seul morceau et clean de tous les trucs méchants
En fouillant un peu sur le net, j'ai trouvé cela ici :
mais ca me retourne ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $texte='<toto>Nuage de tags</toto>'; $texte = preg_replace('#(<(/?(?!table|div|p|toto)\b[^"]*?)>)ies#', '<i>$1</i>', $texte);
Bref comme si de rien n'était !
Code : Sélectionner tout - Visualiser dans une fenêtre à part <toto>Nuage de tags</toto>
(Je vous passe tous mes autres tests...)
Le toto c'est de moi, mais ca ne marche absolument pas, alors que la personne affirme le contraire. Quoiqu'il en soit cela ne m'aiderai que pour mon premier point.
J'ai également regardé les tutoriels regex et les cours et tutoriels PHP du site, mais je n'y arrive toujours pas...
Partager