On Thu, 20 Jun 2019, Zoltán Herczeg wrote:

> > (?=x|y) looks much more ergonomical than (?:(?=x)|(?=y))
> 
> They behave the same way, so pick whatever you prefer.

(?:(?=X)|(?=Y))Z means "if X matches, try to match Z; if that fails, if
Y matches try to match Z". In the simple case the second match of Z will 
be the same as the first, so will always fail. However, if X and Y are 
complex and contain capturing parentheses, I suppose it is possible to 
construct Z using back references in such a way that it fails after X
matches but succeeds after Y matches.

But who would want to constuct such a complicated thing?

Philip

-- 
Philip Hazel
-- 
## List details at https://lists.exim.org/mailman/listinfo/pcre-dev 

Reply via email to