Zitat von
pstruh:
Hallo xtZ, jooo, das ist so eine Sache mit der virtuellen Programmierung im Büro zwischen zwei Besprechungen. Sorry, das war dann wohl doch etwas "zu schnell geschossen". Aber vielleicht hilft es ja doch ein wenig in die richtige Richtung. Der Code von Jens (so ich das richtig sehe) die besonderheit, dass er mit 2 StringListen arbeitet. Vielleicht ist das tatsächlich einfacher (und vielleicht auch schneller). Du wirst schon noch 'ne Lösung bekommen.
Gruß aus Hamburg
Ja das versteh ich. Aber dein Code hat mir ja auch schon den nötigen Denkanstoß gegeben, es zu vollenden.
Delphi-Quellcode:
procedure OnlyDupes(var slList: TStringList);
var
i: Integer;
begin
i := 1;
while i < slList.Count - 2 do
if (slList[i - 1] <> slList[i]) and (slList[i + 1] <> slList[i]) then
slList.Delete(i)
else
inc(i);
if slList[0] <> slList[1] then
slList.Delete(0);
if slList[slList.Count - 1] <> slList[slList.Count - 2] then
slList.Delete(slList.Count - 1);
end;
Danke nochmal.