Thema: Delphi TPerlRegex sehr langsam

Einzelnen Beitrag anzeigen

Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#12

Re: TPerlRegex sehr langsam

  Alt 18. Mär 2010, 15:23
Der obige Regex braucht hier nicht mal eine Sekunde (Das Schreiben ins Memo dauert aber ein paar Sekunden):
Delphi-Quellcode:
var
  M: IMatchCollection;
  N: TStringList;
  i: Integer;
begin
  N := TStringList.Create;
  with TStringList.Create do
  try
    LoadFromFile('ips.txt');
    with RegExCreate('(\d{1,3}(?>\.)){3}(?>\d{1,3})') do
    begin
      M := Matches(Text);
      for i := 0 to M.Count - 1 do
        N.Add(M.Items[i].Value)
    end;
    Memo1.Lines.Assign(N);
  finally
    Free;
    N.Free;
  end;
Hast Du nicht so etwas wie eines "Matches" Funktion bei TPerlRegEx, die alle Resultate auf einmal liefert?

Viele Grüße
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat