Поделиться через


Функция ms:string-compare

Выполняет сравнение строк. Необходимость этой функции обусловлена невозможностью выполнить лексикографическое сравнение двух строк при помощи XPath.

number ms:string-compare(string x, string y, [,string language _
                                             [,string options]])

Параметры

  • x типа string
    Строковое значение для сравнения. Нестроковые значения преобразуются в строковые перед сравнением.
  • y типа string
    Строковое значение для сравнения. Нестроковые значения преобразуются в строковые перед сравнением.
  • язык строки[необязательно]
    Задает язык для определения порядка сортировки. Это похоже на атрибут <xsl:sort> lang (например, "ru-RU" или "fr-CA"). Если данный параметр пропущен или является пустой строкой, то язык определяется системной средой (язык текущего потока).
  • параметры строки[необязательно]
    По умолчанию при сравнении учитывается регистр, причем сначала идет нижний регистр.

    параметр описание

    u

    При сравнении учитывается регистр. Первым идет верхний регистр.

    i

    При сравнении регистр не учитывается для всех обычных различий между символами, такими как регистр, тип японской азбуки и ширина символов. (Ширина символов сравнивается только в некоторых языках).

Возвращаемые значения

Возвращает одно из следующих трех числовых значений.

Если Образец функции возвращает

x < y

-1

x = y

0

x > y

1

Замечания

Сравнение строк выполняется в лексикографическом (словарном) порядке. При указании неподдерживаемого языка или параметра происходит ошибка выполнения. Для компонентов MSXML возвращается E_FAIL.

Пример

В следующем примере кода показано сравнение двух строк с помощью функции ms:string-compare. В этом примере сравниваются три строки чисел («1», «2» и«3») с «2». Результаты сравнения показаны в таблице, которая находится сразу за кодом.

XML-файл

XSLT-файл (translate.xslt)

Результаты сравнения.

x, y Результат

"1" , "2"

-1

"2" , "2"

0

"3" , "2"

1

См. также

Справочник

Справочник по схемам XML (XSD)
Справочник по типам данных XML