Comme l'indique le titre je souhaite utiliser une expression régulière très générique qui me permettrait, pour un contenu html donné incluant des balises ancre/lien, de récupérer à la fois les liens et leur contenu, que je pourrait traiter par ailleurs.
par exemple ces balises doivent être récupérées :
1 2 3 4 5 6
| <a href="http://www.lien1" id="idlien1" class="classlien1" title="titlelien1">lien1</a>
<a href="http://www.lien2" class="classlien2" title="titlelien2">lien2</a>
<a href="http://www.lien3" class="classlien3" id="idlien3">lien3</a>
<a href="http://www.lien5" class="classlien5">lien5</a>
<a href="http://www.lien6" id="idlien6">lien6</a>
<a href="http://www.lien7" title="titlelien7">lien7</a> |
j'ai pensé pouvoir faire toutes les opérations en une fois avec une expression
du type
<a( href="([^"]*)"){0,1}( id="([^"]*)"){0,1}( class="([^"]*)"){0,1}( title="([^"]*)"){0,1}>([^<]*){1}<\/a>
qui fonctionne très bien, mais seulement pour une balise avec les éléments dans cet ordre (href, puis id, puis, class puis title)
Je souhaiterais savoir s'il est possible de généraliser cette expression en cherchant les termes dans n'importe quel ordre.
id, puis href, puis title puis class ou bien title puis id puis class puis href...
merci d'avance
Partager