Delphi 如何删除列表框中的重复项?
我使用此代码删除重复项:Delphi 如何删除列表框中的重复项?,delphi,listbox,duplicate-removal,Delphi,Listbox,Duplicate Removal,我使用此代码删除重复项: procedure TForm1.RemoveDuplicates(StrList : TStringList); var NoDuplicate: TStringList; i: Integer; begin NoDuplicate := TStringList.Create; try NoDuplicate.Sorted := True; NoDuplicate.Duplicates := dupIgnore; ///
procedure TForm1.RemoveDuplicates(StrList : TStringList);
var NoDuplicate: TStringList;
i: Integer;
begin
NoDuplicate := TStringList.Create;
try
NoDuplicate.Sorted := True;
NoDuplicate.Duplicates := dupIgnore;
///
for i := 0 to StrList.Count - 1 do
NoDuplicate.Add(StrList[i]) ;
///
NoDuplicate.Sorted:= False;
StrList.Assign(NoDuplicate) ;
finally
NoDuplicate.Free;
end;
end;
它很好用。但“dupIgnore”的问题是它不区分大小写。
例如,“rodeo”和“rodeo”代表“dupIgnore”是重复的,尽管它们不是。如何解决这个问题 试试看
NoDuplicate.CaseSensitive := True;
试一试
就这么简单。。。谢谢,就这么简单。。。谢谢。删除重复项的最佳方法是不允许在第一个位置添加重复项:-)删除重复项的最佳方法是不允许在第一个位置添加重复项:-)