Hi Sébastien!
On Mon, 11 Oct 2004 18:52:56 +0200, Sébastien Saint-Sevin seb-cl-mailist@matchix.com wrote:
I'm doing multi-lines regex searches over big files that can't be converted to single string. So I introduced a kind of buffer that I'm using to search.
Now, I need to add a constraint to scan, do-scans & others (in addition to (&key start end)) : I want to be able to specify to the engine that a scan must start before a certain index in the string (to avoid searching further results that will be cancelled later because of my buffered multi-line matching process).
Logically, this :must-start-before value correspond to the first line of my buffer. If nothing starts at first line, I need to move the search one line forward, so everything that the engine would match later on in the string is wasted time.
How can I do it ?
Have you considered using something like
(?s:(?=.{n}))<actual-regular-expression>
where n obviously is an integer computed from your constraints above? I don't know how this'll behave performance-wise but you could just try it... :)
Or have I misunderstood your question? Actually, I'm not sure why the END keyword parameter doesn't suffice. Can you give an example?
PS: Edi, if you are back, my previous post is still an open question ;-) (the one with FILTER...)
Yes, I'm back but unfortunately I'm very busy with commercial stuff right now. Sorry, filters will have to wait some more.
Cheers, Edi.