Emulating possessive quantifiers

.net, quantifiers, regex

Solution

Yup. May I quote the master himself, Jeffrey Friedl, from page 142 of his classic Mastering Regular Expressions (3rd Edition):

"In one sense, possessive quantifiers are just syntactic sugar, as they can be mimicked with atomic grouping. Something like `.++` has exactly the same result as `(?>.+)`, although a smart implementation can optimize possessive quantifiers more than atomic grouping."

Problem

Is it possible to emulate possessive quantifiers (.NET doesn’t support it) using atomic grouping (or in other way)? Note. I found that `(x+x+)++y` can be replaced with `(?>(x+x+)+)y`, but this is just an example and I don’t know whether always `{something}@+` equals to `(?>{something}@)` (where `@` is a quantifier).

Original source

Related problems