in reply to Re^3: search for 'cat' not followed by 'dog'
in thread search for 'cat' not followed by 'dog'

Note that even if the lookarounds did capture, putting a non-capturing group around a capturing group doesn't stop it from capturing, i.e. "x"=~/(?:(x))/ still puts "x" in $1 (you can even do funky stuff like "xyz"=~/(?=(y))/ which will capture "y" without advancing the match position past it).

As of 5.22 you can say (?n:...) and any capture groups inside will be non-capturing.