Функция позволяет различным образом отсортировать
Описание
Функция позволяет различным образом отсортировать символы,
содержащиеся в строке. Принимаются во внимание многие параметры,
в том числе содержание и длина сортируемых последовательностей.
Примечания
. Функция использует алгоритм быстрой сортировки.
. Параметр <cString> может быть передан по ссылке. При этом вызов
CSETREF(.T.), подавляющий возвращение функцией результата, позволяет
уменьшить потребности в рабочей памяти.
. Поскольку последние параметры различаются по типу данных, то при
вызове функции допустимо опускать необязательные параметры вместе с
разделяющими их запятыми (что отмечено в подразделе Синтаксис
помещением предшествующей разделяющей запятой внутри квадратных
скобок).
Примеры
. Обычная сортировка в соответствии с ASCII-кодом символов:
? CHARSORT("qwert") // "eqrtw"
. Сортировка двухбайтовых подстрок:
? CHARSORT("qwert", 2) // "erqwt"
. Сортировка двухбайтовых подстрок при сравнении только по первому
символу:
? CHARSORT("bla4a3a2a1", 2, 1) // "a2a1a3a4b1"
. Посимвольная сортировка с исключением трех первых символов:
? CHARSORT("XXXqwert", 1, 1, 3) // "XXXeqrtw"
. Сортировка двухбайтовых подстрок со сравнением только по второму
символу:
? CHARSORT("bla4a3a2a1", 2, 1, 0, 1) // "a1b1a2a3a4"
. Сортировка только четырех первых символов:
? CHARSORT("384172852", 1, 1, 0, 0, 4) // "134872852"
. Сортировка в порядке убывания (необязательные параметры с
разделяющими запятыми опущены):
? CHARSORT("qwert", .T.) // "wtrqe"