Клиппер 5. Справочник

Функция позволяет различным образом отсортировать


 
  Описание
 
    Функция позволяет различным образом отсортировать символы,
    содержащиеся в строке. Принимаются во внимание многие параметры,
    в том числе содержание и длина сортируемых последовательностей.
 
  Примечания
 
  . Функция использует алгоритм быстрой сортировки.
 
  . Параметр <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"

Содержание раздела