This piece of code is not perfect, but demonstrates a different approach using HTML::TokeParser::Simple:
#!/usr/bin/perl use strict; use warnings; use HTML::TokeParser::Simple; use File::Find; find(\&wanted, 'pages'); exit; sub wanted { my ($open, $buffer); return unless -f $_; my $p = HTML::TokeParser::Simple->new( $_ ) or die "can't parse $_: +$!"; while (my $token = $p->get_token) { if ($open) { if ($token->is_comment && $token->as_is =~ /\/table/i) { $open = 0; } else { $buffer .= $token->as_is; } } else { if ($token->is_comment && $token->as_is =~ /table/i) { $open = 1; } } } print $buffer, "\n"; }
HTH, Valerio
In reply to Re: Copying text between markers
by valdez
in thread Copying text between markers
by katgirl
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |