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.