use HTML::TokeParser::Simple; my $text; my $parser = HTML::TokeParser::Simple->new( \$string ); while( my $token = $parser->get_token ) { $text .= $token->as_is if $token->is_text; }