Как вы конвертируете регистр в XSL?
<xsl:variable name="upper">UPPER CASE</xsl:variable>
<xsl:variable name="lower" select="???"/>
Как вы конвертируете регистр в XSL?
<xsl:variable name="upper">UPPER CASE</xsl:variable>
<xsl:variable name="lower" select="???"/>
В XSLT 1.0 upper-case()
и lower-case()
функции не будут доступны. Если вы используете таблицу стилей 1.0, общий метод преобразования регистра translate()
:
<xsl:variable name="lowercase" select="'abcdefghijklmnopqrstuvwxyz'" />
<xsl:variable name="uppercase" select="'ABCDEFGHIJKLMNOPQRSTUVWXYZ'" />
<xsl:template match="/">
<xsl:value-of select="translate(doc, $lowercase, $uppercase)" />
</xsl:template>
XSLT 2.0 имеет
upper-case()
иlower-case()
функции. В случае XSLT 1.0 вы можете использоватьtranslate()
:источник
Реализация .NET XSLT позволяет писать собственные управляемые функции в таблице стилей. Для нижнего регистра () это может быть:
Предположим, это может быть медленным, но все же приемлемым.
Не забудьте включить поддержку встроенных скриптов для преобразования:
источник
return (stringValue ?? string.Empty).ToLower();
. Спасибо, @Vladislav, я никогда не знал, что у тебя такое получится!источник
Для кодировки символов ANSI:
источник
верхний регистр (строка) и нижний регистр (строка)
источник