es geht aber auch ohne schleife: TStringlist kann beim Hinzufügen von Duplikaten mit einem Fehler reagieren; vorallem ist das optimierter, da sortiere Stringlisten Quicksort verwendet.(vorallem wenn beide Listen lang sind!!) Ich habe das auch mal gebraucht, habe das dann so gelöst:
Delphi-Quellcode:
function IstVorhanden(CommaText1, Commatext2 : String; DelimiterChar: String) : Boolean;
var
tstr1, tstr2 : TStringList;
begin
tstr1 := TStringList.Create();
tstr2 := TStringList.Create();
try
with tstr1 do begin
Sorted := True; // ! wichtig, sonst geht das ganze nicht
Duplicates := dupIgnore;
Delimiter := DelimiterChar;
DelimitedText := CommaText1;
end;
with tstr2 do begin
Sorted := True; // ! wichtig, sonst geht das ganze nicht
Duplicates := dupIgnore;
Delimiter := DelimiterChar;
DelimitedText := CommaText2;
end;
with tstr1 do begin
Duplicates := dupError;
try
AddStrings(tstr2);
Result := False;
except
Result := True;
end;
end;
finally
tstr1.Free;
tstr2.Free;
end;
end;
[edit=Luckie][ delphi]-Tags eingefügt. Beim nächsten mal bitte selber machen. Mfg, Luckie[/edit]