use HTML::Parser;
$p = HTML::Parser->new( api_version => 3,
start_h => [\&start, "tagname, attr"],
end_h => [\&end, "tagname"],
marked_sections => 1,
);
{
my $in_link = 0;
sub start {
my($tagname, $attr) = @_;
if ($tagname eq 'a') {
$in_link = 1;
} elsif ($in_link and $tagname eq 'img' and exists $attr->{alt
+}) {
print "IMG: $attr->{src} = $attr->{alt}\n";
}
}
sub end {
$in_link = 0 if ($_[0] eq 'a');
}
}
$p->parse('sadf dsfg<a href="foo.html"><iMg src="foo.gif" alt="blah"><
+/a>
<img src="bar.gif" alt="nenene"> sdf');
$p->eof();
Jenda |