Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1481 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  regex et nettoyage de code html

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

regex et nettoyage de code html

n°1673361
Psykolio
Posté le 18-01-2008 à 14:41:23  profilanswer
 

hello, je suis en train de tenter de faire une regex afin de nettoyer un code html comme celui-ci:

Code :
  1. <span style="color: rgb(255, 107, 33); font-weight: bold;" class="style5"><span class="style2"><span class="style3"><span class="style4"><span class="style3"><span class="style5"><span class="style1"><span class="style4"><span class="style3"><span class="style1">jkjkjkjk</span></span></span></span></span></span></span></span></span></span><br />


 
donc ce qu'il faudrait, c'est virer toutes les balises <span> entre la première et la dernière balise <span>, puis récupérer le style de la dernière balise pour le remplacer dans la première, et enfin virer les </span> inutiles.
 
donc obtenir ceci:

Code :
  1. <span style="color: rgb(255, 107, 33); font-weight: bold;" class="style1">jkjkjkjk</span><br />


 
j'ai tenté péniblement de déjà virer les <span> en trop, mais j'y suis pas arrivé, ce qu'il me faudrait je pense c'est un truc du genre:

Code :
  1. $txt=preg_replace("`(<span[^>]*> )<span[^>]*>(<span[^>]*> )`","$1$2",$txt);


mais où le <span[^>]*> du milieu peut-être répété une ou plusieurs fois (comment spécifier ça?)
 
 

mood
Publicité
Posté le 18-01-2008 à 14:41:23  profilanswer
 

n°1673365
astryad
Posté le 18-01-2008 à 14:48:26  profilanswer
 

J'essaierai comme ça :
 

Code :
  1. $txt=preg_replace("`(<span[^>]*> )(<span[^>]*> )+(<span[^>]*> )`","$1$3",$txt);


 
Mais je suis pas totalement sur :P

n°1673383
Psykolio
Posté le 18-01-2008 à 14:58:12  profilanswer
 

ben ça marche pas... mais t'es sûr que c'est correct de mettre entre parenthèses le span du milieu pour pouvoir mettre un + ?
ça me semble bizarre...

n°1673415
Psykolio
Posté le 18-01-2008 à 15:14:09  profilanswer
 

oh ben mince ça marche finalement.... il y avait des espaces en trop voilà tout... ben merci beaucoup, je vais continuer!


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  regex et nettoyage de code html

 

Sujets relatifs
mailing html sur fond noir : problemes !!!Réponse tardive de HttpRequest - javascript - ajax -html
Exécution d'un script ant avec un code JAVAProbleme pour recuprer une variable dans un code embed vers un swf
Code Javascript pour appeler des fichiers dans une autre fenetrecentrage html/css galère...
Pb récurrent javascript avec quotes & code htmlComment exécuter des commandes à distant avec un code java?
[HTML] espace entre un titre et son soulignement 
Plus de sujets relatifs à : regex et nettoyage de code html


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR