Einzelnen Beitrag anzeigen

Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#4

Re: wieder mal 2 Stringlisten vergleichen, Zugriff funzt net

  Alt 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
  Mit Zitat antworten Zitat