premiere utilisation des references arrières, et ca passe pas !
je veux supprimer toutes les balises de type strong,em,b,i
certaines balises strong peuvent avoir une classe (<strong class="maclasse">)
certaines balises sont imbriquées, genre :
<i><strong class="maclasse">du contenu que je veux garder</strong></i>
le contenu est assumé comme sémantiquement valide.
J'ai essayé :
1 2 3
|
#(?:<(?:b|em|strong|i)[^>]*?>)(.*?)(?:</(?:b|em|strong|i)>)#
//probleme : du mal avec les imbriquées, il me renvoie du contenu avec une demi balise, en prenant la fin de l'imbriquée pour la fin de l'enveloppante |
du coup, je me dis qu'avec une référence arrière ca devrait passer :
#(?:<(?:b|em|strong|i)[^>]*?>)([^<]*?)(?:<(/\1)>)#
.... mais ca ne passe pas
une idée ?
Partager