anchor.diff:  function FLREMatch(const Instance:pointer;const Input:pointer;const InputLength:longint;const Captures:PPointer;const CountCaptures:PLongint;const StartPosition:longint;const Error:PPAnsiChar):longint;
   function FLREMatchNext(const Instance:pointer;const Input:pointer;const InputLength:longint;const Captures:PPointer;const CountCaptures:PLongint;const StartPosition:longint;const Error:PPAnsiChar):longint;
   function FLREMatchAll(const Instance:pointer;const Input:pointer;const InputLength:longint;const MultiCaptures:PPointer;const CountMultiCaptures,CountCaptures:PLongint;const StartPosition,Limit:longint;const Error:PPAnsiChar):longint;
  -{
  -function PtrMatchAll(const Input:pointer;const InputLength:longint;var Captures:TFLREMultiCaptures;const StartPosition:longint=0;Limit:longint=-1):boolean;
  -function PtrReplaceAll(const Input:pointer;const InputLength:longint;const AReplacement:pointer;const AReplacementLength:longint;const StartPosition:longint=0;Limit:longint=-1):ansistring;
  - {}
  +function FLREReplaceAll(const Instance:pointer;const Input:pointer;const InputLength:longint;const Replacement:pointer;const ReplacementLength:longint;const ResultString:PPointer;const ResultStringLength:PLongint;const StartPosition,Limit:longint;const Error:PPAnsiChar):longint;
   
   implementation
   
  
positive.code:  result:='';
   Captures:=nil;
   try                       
    SimpleReplacement:=(PtrPosChar('$',AReplacement,AReplacementLength)<0) and (PtrPosChar('\',AReplacement,AReplacementLength)<0);
    CurrentPosition:=StartPosition;
    LastPosition:=CurrentPosition;
    if CurrentPosition>=0 then begin
  
negative.code:  if assigned(Instance) then begin
    try
     if assigned(SQLBooleanFullTextExpression) then begin
      s:='';
      try
       s:=TFLRE(Instance).GetPrefilterSQLBooleanFullTextExpression;
       Len:=length(s);
       if Len>0 then begin
        GetMem(SQLBooleanFullTextExpression^,(Len+1)*SizeOf(AnsiChar));
        Move(s[1],SQLBooleanFullTextExpression^[0],Len);
        SQLBooleanFullTextExpression^[Len]:=#0;
       end else begin
        SQLBooleanFullTextExpression^:=nil;
       end;
      finally
       s:='';
      end;
     end;
     result:=1;
    except
  