I think the escaping is still necessary in that case....
Maybe something like this would be cleaner:
my @ary = split /qr{<p align="center">/}/, $_;
That would work unless I was trying to interpolate into the pattern, because
I set $/ = '' and read into memory in paragraph mode.
I believe that the solution you show allows me to act on the match as $1,
but in this case it wouldn't matter because it's only one pattern to match,
not multiple patterns or sections of a pattern. If () autoescapes the
special characters I'll just shut my mouth (or keyboard) then. :-)
Scot R.
inSite
----- Kristofer Hoch wrote: -----
split /<p align=\"center\">/, $_
instead of matching <p (space) a,l,i,g,n,=, \",c,e,n,t,e,r\">
embrace it in parenthesis...no escaping neccessary...
split /(<p align="center">)/, $_
At least I think that I am reading this book properly....hmmmm
--- Scot Robnett <[EMAIL PROTECTED]> wrote:
> I was wondering why this array that I am attempting to create at line
> 21
> seems to be empty. If I want to put chunks separated by <p
> align="center">
> into the array, how could I do this differently to make it work?
>
>
######################################################################
>
> #!C:\Perl\bin\perl.exe -w
>
> $/ = ''; # slurp in paragraph mode
> my $inputfile = 'C:\path\to\file.htm';
> my $outputfile = 'C:\path\to\OUT.html';
>
> open(INFILE,"<$inputfile") or die "Could not open IN: $! \n";
> open(OUTFILE,">$outputfile") or die "Could not open OUT: $! \n";
>
> my @sections = ();
>
> while(<INFILE>) {
> chomp;
> $_ =~ s/\r{3,}/\r/g; # change multiple carriage returns to single \r
> $_ =~ s/\n{3,}/\n/g; # change multiple newlines to \n (may not be
> necessary)
> $_ =~ s/<\/*html>//g; # these
> $_ =~ s/<\/*head>//g; # are
> $_ =~ s/<\/*title>//g; # pretty
> $_ =~ s/<\/*body.*?>//g; # obvious
> $_ =~ s/(<br wp=.*?>)+//g; # get rid of weird WordPerfect schneck
> @sections = split /<p align=\"center\">/, $_; # these are the chunks
> I want
> print OUTFILE $_;
> }
>
> print OUTFILE "\n\n"; # add a couple of newlines to separate results
>
> foreach my $section(@sections) {
> chomp($section);
> print OUTFILE "$section \n\n\n"; # why is this printing nothing?
> }
>
> close(OUTFILE);
> close(INFILE);
> 1;
>
>
>
>
> --
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
=====
-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GIT d s+:++ a C++ UL++ US+ P+++ L++
W+++ w PS PE t++ b+ G e r+++ z++++
------END GEEK CODE BLOCK------
__________________________________
Do you Yahoo!?
Yahoo! Calendar - Free online calendar with sync to Outlook(TM).
http://calendar.yahoo.com
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]