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;