On Sat, Nov 23, 2002 at 10:45:40AM +0000, Jason Rauer wrote:
> Say I have:
>
> foreach $string (@strings) {
> if ($text =~ /$string/) { ... }
> }
>
> Now, it happens that the data in $string contains \|()[{$^*.? etc. that
> turn into regex metacharacters within m// but I want to match them by their
> literal value, not as a regex pattern. That is, now Perl terminates the
> script because whenever $string happens to contain, say, a ( it interprets
> it as an unmatched parenthesis in a regex pattern when what I'd like to
> match is just \(.
>
> How to keep those characters from turning into regex patterns?
The function you are looking for is called C<quotemeta>.
perldoc -f quotemeta
--
Paul Johnson - [EMAIL PROTECTED]
http://www.pjcj.net
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]