Hallo,
suche einen Algorithumus, der mir aus einem Memo alle Wörter einzeln herausholt, und das möglichst effizient.
Benutze im Moment diesen hier:
Delphi-Quellcode:
function wort_(s: string; k: integer): string;
var n: integer;
begin
s := trim(s); //entfernt Leerzeichen, #13 oder andere Steuerzeichen
n := pos(' ', s);
if n = 0 then n := pos(#13,s); //Zeilenumbruch
if n = 0 then Begin
if k > 1 then result := '' else result := s
End else Begin //z.B. s='abc def;
if k > 1 then result := wort_(copy(s, n + 1), k - 1) //rekursiv
else result := copy(s, 1, n - 1);
End;
end;
welchen ich per while durchlaufen lasse, bis er nichts mehr aussspuckt.
Allerdings treibt der bei einem gröseren Memo selbst meinen Core 2 Duo in die Knie.
Hoffe ihr könnt mir helfen!