我使用以下代码删除重复项:

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”的问题在于它不区分大小写。
例如,“ dupIgnore”的“ rodeo”和“ Rodeo”是重复项,尽管不是。如何解决这个问题?

最佳答案

尝试

NoDuplicate.CaseSensitive := True;

10-06 12:37