以前の回答は完璧でした。パーティーに遅れたことはわかっていますが、これは [perl] フィードにぶつけられたので…</p>
XML::LibXMLは、HTML の解析に優れており、速度の点で優れています。recover
不適切な形式の HTML を解析するときのオプションを設定します。
use XML::LibXML;
my $doc = XML::LibXML->load_html(IO => \*DATA);
for my $anchor ( $doc->findnodes("//a[\@href]") )
{
printf "%15s -> %s\n",
$anchor->textContent,
$anchor->getAttribute("href");
}
__DATA__
<html><head><title/></head><body>
<a href="http://www.google.com">Google</a>
<a href="http://www.apple.com">Apple</a>
</body></html>
–利回り–</p>
Google -> http://www.google.com
Apple -> http://www.apple.com