use strict; use HTML::Parser; use Data::Dumper; my $input = q{Startand moreand end}; print "Input: [$input]\n"; my $p = HTML::Parser->new(api_version=>3, start_h=>[ \&startTokenHandler, "self,tokens" ], end_h=>[ \&endTokenHandler, "self,tokens" ], text_h =>[ \&textHandler, "self,dtext" ], ); $p->parse($input); sub startTokenHandler { my $self = shift; my $token = shift; printf("<%s %s=%d>\n", @$token); } sub endTokenHandler { my $self = shift; my $token = shift; printf("\n", $token->[0]); } sub textHandler { my $self = shift; my $text = shift; print "$text\n"; }