![]() |
|
Welcome to the Monastery | |
PerlMonks |
Re: Matching brackets in Regular Expressionby thospel (Hermit) |
on Nov 21, 2003 at 06:45 UTC ( #308817=note: print w/replies, xml ) | Need Help?? |
Never forget that regex matching is REGEX matching, NOT string matching. The difference becomes very important in cases like yours where the string contains characters that have a special meaning for regex. So what you actually need is to convert a given string to a regular expression that matches that string.
In perl this is done using quotemeta, which you can also do using \Q...\E to make it happen on the enclosed string. You can drop the final \E if it coincides with the string end. The .* at the beginning and end are useless (even if you use $&, you can just use the whole string there instead supposing it's still unchanged). And once these are gone, the s modifier becomes useless too. So in the end you get:
Or, since you are basically just looking for a substring, you can use index:
In Section
Seekers of Perl Wisdom
|
|