in reply to Re: negative look behind (again)
in thread negative look behind (again)
[From the OP:]
if (/^(?<!TAGS)(.*?)(?=TAG2).*$/x ) {
print $1, "\n";
}
Looked at another way, ^(?<!TAGS) asserts that one wants a string that does not have certain characters before the start of the string. In the absence of the /m regex modifier, this assertion can never fail!
With /m active (allowing ^ to also match after an embedded newline sequence), an assertion of this sort might be written that could actually fail, but then it would be an assertion about the end of the preceding line, and not about the start of the current line.
|
|---|