TStringlist sortieren

Für Fragen von Einsteigern und Programmieranfängern...

Re: TStringlist sortieren

Beitragvon Warf » 21. Jun 2017, 17:30 Re: TStringlist sortieren

Ich habe es jetzt nicht getestet, aber das dürfte genau die Compare Funktion für Customsort sein du du brauchst
Code: Alles auswählen
function CustomSortFunction(List: TStringList; Index1: Integer; Index2: Integer):Integer;
var s1, s2: String;
  i1, i2: Integer;
begin
  s1 := Trim(List[Index1]);
  s2 := Trim(List[Index2]);
  i1:=0;
  while s1[i1+1] in ['0'..'9'] do inc(i1);
  i2:=0;
  while s2[i2+1] in ['0'..'9'] do inc(i2);
  if (i1 > 0) and (i2 > 0) then
    Result := StrToInt(Copy(s1, 1, i1)) - StrToInt(Copy(s2, 1, i2))
  else
    Result := AnsiCompareStr(s1, s2);
end;
Warf
 
Beiträge: 919
Registriert: 23. Sep 2014, 16:46
Wohnort: Aachen
OS, Lazarus, FPC: Mac OSX 10.11 | Win 10 | FPC 3.0.0 | L trunk | 
CPU-Target: x86_64, i368, ARM
Nach oben

• Themenende •
Vorherige

Zurück zu Einsteigerfragen



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste

porpoises-institution
accuracy-worried