die Liste sortieren und dann in einer schleife durchgehen und schauen ob der Nachfolger den gleichen Wert hat wie der Vorgänger
Delphi-Quellcode:
begin
[...]
lNumFound := 0;
lLastChecked := Liste.Strings[Liste.Count - 1];
for i := Liste.Count - 1 downto 0 do
begin
if Liste.Strings[i] = LastChecked then
NumFound := NumFound + 1
else
begin
if (lNumFound > 1) then
MehrfachVorhanden.Add(LastChecked);
lNumFound := 1;
LastChecked := 1;
end;
end;
[...]