use strict;
use File::Find;
use HTML::TokeParser;
my $bak_ext = '.bak';
my $root_dir = '/temp';
find(\&wanted, $root_dir);
sub wanted {
# if the extension fits...
if ( /\.html?/i ) {
print "Processing $_\n";
my $new = $_;
my $bak = $_ . $bak_ext;
rename $_, $bak or die "Cannot rename $_ to $bak: $!";
open NEW, "> $new" or die "Cannot open $new for writing: $!";
+ #WHAT IS THE + DOING?
#I DONT UNDERSTAND THIS TOKEN PART
my $p = HTML::TokeParser->new( $bak ); #IS new( $bak ) A FUNCTION
AND IF SO WHAT IS IT DOING?
while ( my $token = $p->get_token ) {
# this index is the 'raw text' of the token
#I AM LOST ON THIS PART ALTHOUGH I UNDERSTAND IT IS
AN IF ELSE STATEMENT WHAT IS THE 'T' AND 1 AND -1 DOING??
my $text_index = $token->[0] eq 'T' ? 1 : -1;
# it's both a start tag and a meta tag
#PLEASE EXPLAIN THIS PART
if ( $token->[0] eq 'S' and $token->[1] eq 'meta' ) {
$token->[ $text_index ] =~ s/AA\.//g;
}
#I DONT UNDERSTAND THIS PART.
print NEW $token->[ $text_index ];
}
close NEW;
} else {
print "Skipping $_\n";
}
}