Einzelnen Beitrag anzeigen

Satty67

Registriert seit: 24. Feb 2007
Ort: Baden
1.566 Beiträge
 
Delphi 2007 Professional
 
#5

Re: Längste sich wiederholende Sequenz im String finden

  Alt 24. Apr 2009, 17:55
Könnte noch fehlerhaft sein, die Beispielzeichenkette aus dem Startpost findet der Code aber:
Delphi-Quellcode:
function GetBiggestTwin(aText : String) : String;
var
  window, offset, TextLen : Integer;
  TestText, RestText : String;
begin
  TextLen := Length(aText);
  Result := '';

  for window := (TextLen div 2) downto 1 do begin

    offset := 1;
    while window <= (TextLen - ((offset-1)+window)) do begin

      TestText := Copy(aText, offset, window);
      RestText := Copy(aText, offset+window, Textlen);

      if Pos(TestText, RestText) > 0 then begin
        Result := TestText;
        Exit;
      end;
      inc(offset);
    end;
  end;
end;
  Mit Zitat antworten Zitat