Qu'ont dit Rfvgyhn, mais la saveur Perl depuis qui était l'une des balises: utilisez HTML::TreeBuilder
De plus, pour des raisons pour lesquelles RegEx est presque jamais une bonne idée pour analyser XML/HTML (parfois, il est assez bon avec le major Mises en garde), lisez le post StackOverflow obligatoire et tristement célèbre:
RegEx match open tags except XHTML self-contained tags
Rappelez-vous, si l'étendue de votre tâche est littéralement "analyser les liens HREF", ET vous n'avez pas "< lien>" tags ET les liens (par ex. HREF="something"
sous-titres) sont garantis ne pas être utilisés dans d'autres contextes (par exemple, dans les commentaires, ou en texte, ou ont "HREF =" faire partie du lien lui-même), il peut tomber dans la catégorie "Good Enough" utilisation:
my @lines = <>; # Replace with proper method of reading in your file
my @hrefs = map { $_ =~ /href="([^"]+)"/gi; } @lines;
Utilisez une expression régulière et inclinez-vous devant le Seigneur des Ténèbres. http://www.codinghorror.com/blog/2009/11/parsing-html-the-cthulhu-way.html – Stephen
J'étais sur le point de dire "quel genre de dolt publie un billet de blog sur la façon de faire cette mauvaise chose ...alors j'ai remarqué que c'était Coding Horror :) [pour le non-initié, propriétaire du blog Coding Horror est l'un des 2 co-fondateurs de StackOverflow et certainement un meilleur programmeur que moi :)] – DVK