ach so ist das
nja, dann laß die Liste doch gleich richtig sortieren?
Delphi-Quellcode:
type
TNaturalStringList = class(TStringList)
protected
function CompareStrings(const S1, S2: string): Integer; override;
public
constructor Create;
end;
function TNaturalStringList.CompareStrings(const S1, S2: string): Integer;
begin
Result := YourNaturalCompare(S1, S2);
// also der Vergleich aus deinem Compare_NaturalSort
end;
constructor TNaturalStringList.Create;
begin
Sorted := True;
Duplicates := dupIgnore;
end;
Delphi-Quellcode:
var StringList_MN: TStringList; // oder TStrings oder was auch immer
StringList_MN := TNaturalStringList.Create;
{...}
StringList_MN.Add(S);
{...}