Элемент XSLT <xsl:number>
Определение и использование
<xsl:number> элемент используется для определения целого числа的位置 текущего узла в исходном документе. Он также используется для вставки форматированного числа в результат.
Грамматика
<xsl:number count="expression" level="single|multiple|any" from="expression" value="expression" format="formatstring" lang="languagecode" letter-value="alphabetic|traditional" grouping-separator="character" grouping-size="number"/>
Атрибут
Атрибут | Значение | Описание |
---|---|---|
счет | выражение | Выборочно. XPath-выражение, определяющее узел для счета. |
уровень |
|
Выборочно. Управляет распределением номеров. Значение может быть:
|
из | выражение | Выборочно. XPath-выражение, определяющее, с чего начинать счет. |
значение | выражение | Выборочно. Определяет число, предоставляемое пользователем, чтобы заменить автоматически сгенерированный номер. |
format | formatstring | Опционально. Определяет формат вывода чисел.Доступные значения. |
lang | languagecode | Опционально. Определяет языковую азбуку, используемую для нумерации. |
letter-value |
|
Опционально. Устраняет двусмысленность между числовыми и буквенными последовательностями. Значение "alphabetic" определяет буквенные последовательности; значение "traditional" определяет другие последовательности. Значением по умолчанию является "alphabetic". |
grouping-separator | character | Опционально. Определяет символ, используемый для разделения групп или чисел. По умолчанию это запятая. |
grouping-size | number | Опционально. Определяет размер группы. По умолчанию 3. |
Форматный маркер
Форматный маркер | Сгенерированный ряд |
---|---|
1 | 1 2 3 4 5 ... 10 11 12 ... |
01 | 01 02 03 ... 19 10 11 ... 99 100 101... |
a | a b c . . |
A | A B C ...Z AA AB AC... |
i | i ii iii iv v vi vii viii ix x... |
I | I II III IV V VI VII VIII IX X... |
Комментарий:Маркеры, не поддерживаемые Netscape 6: 01, a, A, i, I.
Пример
Пример 1
<xsl:number value="250000" grouping-separator="."/>
Вывод:
250.000
Пример 2
<xsl:number value="250000" grouping-size="2"/>
Вывод:
25,00,00
Пример 3
<xsl:number value="12" grouping-size="1" grouping-separator="#" format="I"/>
Вывод:
X#I#I
Пример 4
<?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <html> <body> <p> <xsl:for-each select="catalog/cd"> <xsl:number value="position()" format="1" /> <xsl:value-of select="title" /><br /> </xsl:for-each> </p> </body> </html> </xsl:template> </xsl:stylesheet>