Zitat von
Coder:
Ich blick schon fast durch meinen eigenen Code nicht mehr.
Weil du das Problem falsch angehst. Reduziere so viel wie möglich.
Dann bleibt noch übrig:
1.) die Quell-Liste
2.) die Blacklist
3.) die Ergebnisliste
Daraus wird dann diese Prozedur:
Delphi-Quellcode:
procedure CopyList(srclist{Quell-Liste}, dstlist{Ergebnisliste}, blacklist:TStrings);
var
s : string;
i : integer;
begin
dstlist.clear; // Ergebnisliste löschen
for i:=0 to srclist.count-1 do
begin
s := srclist[i];
if not IsBlacklisted(blacklist, s) then
dstlist.Add(s);
end;
end;
Dieser Code ist leicht verständlich und kaum noch zu vereinfachen.
Die Funktion IsBlacklisted() prüft, ob irgendein String aus der Blacklist im String s enthalten ist.
Ich denke das kriegst du jetzt selber hin.