Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
Delphi 12 Athens
|
Re: wieder mal 2 Stringlisten vergleichen, Zugriff funzt net
2. Okt 2009, 12:12
Ginge das nicht auch so?
Delphi-Quellcode:
procedure FilterStrings(const List1, List2, DestList: TStrings);
var
I, found: Integer;
tempList: TStringlist;
begin
DestList.BeginUpdate;
try
DestList.Clear;
//Falls die ursprünglichen Listen erhalten bleiben sollen
tempList := TStringlist.Create;
try
tempList.AddStrings(List2);
//erste Liste durchgehen
for I := 0 to List1.Count - 1 do
begin
found := tempList.IndexOf(List1[i]);
//keine Entsprechung gefunden -> in Ergebnis eintragen
if found < 0 then
DestList.Add(Format('1 -> %s',[List1[i]]))
//Entsprechung aus temp. Liste löschen
else
tempList.Delete(found);
end;
//temp. Liste sollte nun keine Entsprechungen mehr aufweisen,
//also verbleibende Strings eintragen
for I := 0 to tempList.Count - 1 do
DestList.Add(Format('2 -> %s',[tempList[i]]))
finally
tempList.Free;
end;
finally
DestList.EndUpdate;
end;
end;
Detlef "Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
|
|
Zitat
|