I've had similar issues and the \Q \E flags didn't fix it.
One thing I've done to fix an issue where regex metacharacters are being
caught is to do a replace on all of the characters to include a \ right in
front.
Something like this:
open (my $FILE, "<", $file) or die "$!\n";
my @lines = <$FILE>;
for (@lines)
{
s|(["'\+\$\(\)])|\$1|g;
}
*go back to regular coding.*
The ( ) sets this block to the $1 variable (From your examples you are
already familiar with this).
The [ ] gives a list of characters that might be caught in the flag.
The \ in the set are just there as escape characters.
It is an ugly brute force method, but it has worked for me before.
On Sat, Nov 13, 2010 at 2:08 PM, Shawn H Corey <[email protected]>wrote:
> On 10-11-13 01:42 PM, Zachary Brooks wrote:
>
>> 1. My first approach was to use substitute to get rid of a range of things
>> between<DOC> and</DATELINE>. A short version looks like this.
>>
>> $hello = "<DOC> man at the bar order the</DATELINE>";
>> $hello =~ s/<DOC>.*<\/DATELINE>//gi;
>> print "$hello\n";
>>
>
> I was about to say that you should use a module to parse your files but
> from what little you posted, it does not look like it's XML or even SGML.
> Do you know what format your data is in?
>
>
> --
> Just my 0.00000002 million dollars worth,
> Shawn
>
> Programming is as much about organization and communication
> as it is about coding.
>
> The secret to great software: Fail early & often.
>
> Eliminate software piracy: use only FLOSS.
>
> --
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> http://learn.perl.org/
>
>
>