Numerische Sortierung von Variablen
Posted: 30 Apr 2024, 05:28
Simple numerische Sortierfunktion (nur für ahk V1 ?) für Variablen aller Art mit einem sinnvollen INDEX im Namen.
Einzige Bedingung ist, dass ausser dem Index keine weiteren Zahlen im Namen vorkommen.
AHK sortiert da von Haus imho nicht wirklich sinnvoll.
gruss
gero
Einzige Bedingung ist, dass ausser dem Index keine weiteren Zahlen im Namen vorkommen.
AHK sortiert da von Haus imho nicht wirklich sinnvoll.
gruss
gero
Code: Select all
#SingleInstance force
Var =
(
c:\xxx\yyy\a_5.abc
c:\xxx\yyy\a_3.abc
c:\xxx\yyy\a_7.abc
c:\xxx\yyy\a_9.abc
c:\xxx\yyy\a_1.abc
c:\xxx\yyy\a_32.abc
c:\xxx\yyy\a_2.abc
c:\xxx\yyy\a_21.abc
c:\xxx\yyy\a_777.abc
c:\xxx\yyy\a_79.abc
c:\xxx\yyy\a_4.abc
)
Sort,VAR, ; hier macht AHK Unsinn beim sortieren der Zahlen
MsgBox,4096,original ahk,% VAR
Sort Var,F sort_num_1
MsgBox,4096,aufsteigend, % Var
Sort Var,F sort_num_2
MsgBox,4096,absteigend, % Var
exitapp
sort_num_1(f, g) {
A:=RegExReplace(f, "\D")
B:=RegExReplace(g, "\D")
return A - B ; aufsteigend
}
sort_num_2(f, g) {
A:=RegExReplace(f, "\D")
B:=RegExReplace(g, "\D")
return B - A ; absteigend
}