#! /usr/bin/perl use strict; use HTML::Parser; my @links; my $string = qq~ fetter text Ein anderer Text kursiver text text ~; my $p = HTML::Parser->new(); $p->handler(start => \&start_handler,"tagname,self"); $p->parse($string); foreach my $link(@links){ print "Tag:\t",$link->[0],"\nText:\t",$link->[1],"\n\n"; } <>; sub start_handler{ my $tag = shift; my $self = shift; my $text; $self->handler(text => sub{$text = shift;}, 'text'); $self->handler(end => sub{push(@links,[$tag,$text])}); }