[yunqa.de] TDIRegEx2SearchStream

  • From: <brett@xxxxxxxxxxx>
  • To: <yunqa@xxxxxxxxxxxxx>
  • Date: Fri, 31 May 2019 14:26:52 +1000

Hi,

   DIRegEx and YuPcre2 use the DFA variant of regex in the
TDIRegEx2SearchStream class.  Is it possible to use the PERL variant?  For
example the search

 

(dave).{1,200}(this)

on a file containing

"I spoke to dave and he said he that this and this and this and that and
blah and blah happened before he shook"

 

Will not return a result (in say the demo YuPcre2_RegEx2_SearchStream_prog).
The DFA can be changed to PARTIALSOFT (instead of the current HARD) and it
will return a greedy result.

 

But using a (?U) or

(dave).{1,200}?(this)

will always return greedy (ie. The last "this") in TDIRegEx2SearchStream.
The vectors do contain all "this" hits, but I don't know if they wanted
greedy or lazy without decoding the expression so do not know which vector
to show (there are 3 in this example case).

 

A PERL variant would return the lazy version.  Is it possible use the PERL
in the TDIRegEx2SearchStream, or is there a flag/option I am missing?

 

Thanks

Brett

Other related posts: