Einzelnen Beitrag anzeigen

DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#8

AW: Zwei Listen filtern Denkproblem

  Alt 28. Mai 2019, 12:53
Danke für die Hilfe aber das hilft mir alle nicht weiter. Das ist wie mit Kanonen auf Spatzen schießen.

Hier sehe ich am Ende dusseldorf obwohl es in der Liste1 ist. Was ich sehen muss ist napoli damit alles was napoli beinhaltet raus kann.
Delphi-Quellcode:
Staedte1 := TStringList.Create;
 Staedte2 := TStringList.Create;
 try
  // Liste 1
  Staedte1.Add('berlin');
  Staedte1.Add('dusseldorf');

  // Liste 2
  Staedte2.Add('berlin,berlin');
  Staedte2.Add('berlin,dusseldorf');
  Staedte2.Add('berlin,napoli');

  Staedte2.Add('dusseldorf,berlin');
  Staedte2.Add('dusseldorf,dusseldorf');
  Staedte2.Add('dusseldorf,napoli');

  Staedte2.Add('napoli,berlin');
  Staedte2.Add('napoli,dusseldorf');
  Staedte2.Add('napoli,napoli');

  for j := Staedte2.Count - 1 downto 0 do
   begin
    Stadt1 := Staedte2.Strings[j].Split([','])[0];
    Stadt2 := Staedte2.Strings[j].Split([','])[1];
    LoescheStadt := False;

    for i := 0 to Staedte1.Count - 1 do
     begin
      StadtListe1 := Staedte1.Strings[i];

      LoescheStadt := (StadtListe1 <> Stadt1) and (StadtListe1 <> Stadt2);

      if LoescheStadt then
       Break;
     end;

    if LoescheStadt then
     Staedte2.Delete(j);
   end;

  ShowMessage(Staedte2.Text);
 finally
  Staedte1.Free;
  Staedte2.Free;
 end;

Geändert von DieDolly (28. Mai 2019 um 13:10 Uhr)
  Mit Zitat antworten Zitat