Re: [pcre-dev] Some words about assertion docs

Top Page
Delete this message
Author: ph10
Date:  
To: Zoltán Herczeg
CC: Pcre-dev, ND
Subject: Re: [pcre-dev] Some words about assertion docs
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