Книга: Технология XSLT

Функция string

Функция string

string string(object?)

Подобно функциям boolean и number, функция string преобразует свой аргумент к строковому типу явным образом. Если аргумент опущен, функции передается множество узлов, состоящее из единственного контекстного узла.

Напомним вкратце правила приведения других типов к строке.

? Булевые значения преобразуются в строку следующим образом:

 • "истина" (true) преобразуется в строку "true";

 • "ложь" (false) преобразуется в строку "false".

? Числа преобразуются к строковому виду следующим образом:

 • не-число (NaN) преобразуется в строку "NaN";

 • положительный нуль преобразуется в строку "0";

 • отрицательный нуль преобразуется в строку "0";

 • положительная бесконечность преобразуется в строку "Infinity";

 • отрицательная бесконечность преобразуется в строку "-Infinity";

 • положительные целые преобразуются в свое десятичное представление без ведущих нулей и без точки ("."), отделяющей дробную часть от целой;

 • отрицательные целые преобразуются так же, как и положительные, но с начальным знаком "минус" ("-");

 • остальные числа преобразуются в десятичное представление с использованием точки ("."), отделяющей целую часть от дробной части; целая часть не содержит ведущих нулей (кроме случая с числами в интервале (-1;1)), дробная часть содержит столько цифр, сколько требуется для точного представления числа.

? Множество узлов преобразуется в строковое значение своего первого в порядке просмотра документа узла. Если множество пусто, функция возвращает пустую строку.

? Объекты других типов преобразуются в строку в соответствии с собственными правилами. Например, результирующий фрагмент дерева преобразуется в конкатенацию всех своих строковых узлов.

Примеры

string(boolean(0)) ? false
string(number('zero'))
? NaN
string(number('.50000'))
?0.5
string(number(00500.))
? 500

Для строкового форматирования чисел рекомендуется использовать функцию XSLT format-number совместно с элементом xsl:decimal-format.

Оглавление книги


Генерация: 0.735. Запросов К БД/Cache: 2 / 0
поделиться
Вверх Вниз