On Wed, 29 May 2019, ND via Pcre-dev wrote: > But it seems no difference in pcre2test output in normal and no_start_optimize > cases. Both returned mark value: > > > PCRE2 version 10.33 2019-04-16 > /(*MARK:A)(X|Y)/mark > ABC > No match, mark = A > > /(*MARK:A)(X|Y)/mark,no_start_optimize > ABC > No match, mark = A
Thank you for pointing this out. It is a mistake in the documentation. The reason is that, for a "no match", the MARK returned is the last one seen during the whole match process, not just in the last starting position. Here is a better example: $ ./pcre2test zz PCRE2 version 10.33 2019-04-16 /(*MARK:A)B(*MARK:B)(X|Y)/mark XXXBZ No match, mark = B /(*MARK:A)B(*MARK:B)(X|Y)/mark,no_start_optimize XXXBZ No match, mark = A I will update the documentation in due course. Philip -- Philip Hazel -- ## List details at https://lists.exim.org/mailman/listinfo/pcre-dev