in reply to Re^2: ZERO_LENGTH match
in thread ZERO_LENGTH match

Yes, I was thinking as I wrote my reply that it would make more sense to break it as:

/( (?: a+ | (?=c) ) )/x

But I didn't want to introduce unnecessary complications for the OP, and I wasn't entirely sure there was no deep reason I was missing as to why the docs show /a*/ rather than /a+/ for this.

Hugo