in reply to Re^2: Where can I find more examples of use of Special Backtracking Control Verbs?
in thread Where can I find more examples of use of Special Backtracking Control Verbs?

Ahem, yes. I failed to see that. Thanks pointing that out.

On a completly far-fetched note, now that I think I understand the (*SKIP)(*FAIL) pattern, it seems to me that it only covers the subset of negative look behind assertions that do not come after any character has been matched. For example: /^(.{5})+(?<!ab*c)d/ (which is the same as matching /d(?!cb*a)(.{5})+$/ on the reverse string) can't be rewritten using the (*SKIP)(*FAIL) pattern (AFAICT). I'm sure this is a problem people stumble upon all the time :P

Replies are listed 'Best First'.
Re^4: Where can I find more examples of use of Special Backtracking Control Verbs?
by AnomalousMonk (Archbishop) on Nov 07, 2018 at 19:42 UTC
    For example: /^(.{5})+(?<!ab*c)d/ ... can't be rewritten using the (*SKIP)(*FAIL) pattern ...

    I don't see how it could be done, but I'm still looking. Certainly the trick has its limits. Still, it's handy in a few situations. However, variable width negative look-behind is, perhaps fortunately, not something one tends to really need very often. :)


    Give a man a fish:  <%-{-{-{-<