Atomic Groups are non-capturing and once a match is made will exit the atomic group and throw away all backtracks. Use Atomic Groups for optimising performance.
A non-atomic expression \b(foobar|foot|foo)\b and a test string of foots will:
match foo of foobar => fail and backtrack to the 2nd alter...
Submitted by anonymous - 6 years ago