1

Тема: AHK: Сортировка сначала строки, числа в конце

А вот еще задачка, нужно отсортировать данные таким образом, чтобы сначала шли слова (a - z и т.д.), а потом числа.
Пример:


a
b
c
d
z
0
1
2
3
4

Пробовал коменду SORT, но там как-то не получается. Пробовал сортировку элементов массива, но тоже не получилось.
Есть ли какой-нибудь простой и краткий способ?

2

Re: AHK: Сортировка сначала строки, числа в конце

Вроде всё просто:

text =
(
2
c
3
z
4
1
a
0
b
d
)
Sort, text, F MySort
MsgBox, % text

MySort(a, b) {
   if (a . b ~= "\D\d")
      Return -1
   if (a . b ~= "\d\D")
      Return 1
   Return a > b ? 1 : a < b ? -1 : 0
}
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

3

Re: AHK: Сортировка сначала строки, числа в конце

Кратко, просто, элегантно!
Спасибо.