Einzelnen Beitrag anzeigen

Benutzerbild von argonix
argonix

Registriert seit: 28. Feb 2007
257 Beiträge
 
Delphi 2005 Personal
 
#1

StringList schnell nach mehreren Strings durchsuchen

  Alt 2. Okt 2007, 15:04
Hallo!
Für das ASAI-Projekt ist es nötig, dass ich eine StringList sehr schnell nach vielen Stichworten durchsuchen kann. Ich würde das So machen:
Delphi-Quellcode:
function SeekStrings(List: TStringList;strs: TStringList): TStringList;
var i,j,k: integer;
tmp: TStringList;
begin
tmp:=TStringList.Create;
for i:=0 to strs.Count-1 do begin
k:=0;
for j:=0 to List.Count-1 do begin
if pos(strs[i],List[j])>0 then Inc(k);
end;
tmp.Add(IntToStr(k));
end;
Result:=tmp;
end;
Code nicht getestet!
List ist die zu durchsuchende StringList, strs enthält die Wörter nach denen gesucht wird und tmp am Ende die Anzahl an vorkommen dieser Wörter. Nun meine Frage: Kann man das irgendwie schneller lösen? In dieser Form würde die Funktion zu viel Zeit brauchen, vor allem bei vielen Wörtern.

P.S.: Ich hoffe, das ist das richtige Forum für diese Frage.
  Mit Zitat antworten Zitat