#!/usr/bin/perl -w use strict; use warnings; use Data::Dumper; use HTML::TokeParser::Simple; $|++; #--- Variables my $file = 'test2.php'; my $line_number; print "#--- TokeParser::Simple String\n"; $line_number = 0; open (FH, "<$file") or die "Unable to open $file $!\n"; while () { chomp; $line_number++; my $p = HTML::TokeParser::Simple->new(string => $_); while (my $token = $p->get_token) { if ($token->is_pi) { print $line_number . 'P: ' . $token->get_token0 . "\n"; } if ($token->is_comment) { print $line_number . 'C: ' . $token->as_is . "\n"; } } } close (FH); ############################## print "\n#--- TokeParser::Filehandle\n"; my $fh; open ($fh, "<$file") or die "Unable to open $file $!\n"; $line_number++; my $p = HTML::TokeParser::Simple->new(handle => $fh); while (my $token = $p->get_token) { if ($token->is_pi) { print $line_number . 'P: ' . $token->get_token0() . "\n"; } if ($token->is_comment) { print $line_number . 'Pc: ' . $token->as_is . "\n"; } } close ($fh); ############################## print "\n#--- TokeParser\n"; $line_number = 0; open (FH, "<$file") or die "Unable to open $file $!\n"; while () { chomp; $line_number++; print "LINE: $line_number ********\n"; my $p = HTML::TokeParser->new(\$_); while (my $token = $p->get_token) { print Dumper($token) . "\n"; } } close (FH); __END__