Como você faz a conversão de caso em XSL?
<xsl:variable name="upper">UPPER CASE</xsl:variable>
<xsl:variable name="lower" select="???"/>
Como você faz a conversão de caso em XSL?
<xsl:variable name="upper">UPPER CASE</xsl:variable>
<xsl:variable name="lower" select="???"/>
No XSLT 1.0, as funções upper-case()
e lower-case()
não estão disponíveis. Se você estiver usando uma folha de estilo 1.0, o método comum de conversão de maiúsculas e minúsculas é 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>
O XSLT 2.0 tem
upper-case()
elower-case()
funções. No caso do XSLT 1.0, você pode usartranslate()
:fonte
A implementação do .NET XSLT permite escrever funções gerenciadas personalizadas na folha de estilo. Para minúsculas (), pode ser:
Suponha que isso pode ser lento, mas ainda aceitável.
Não se esqueça de habilitar o suporte a scripts incorporados para transformação:
fonte
return (stringValue ?? string.Empty).ToLower();
. Obrigado @Vladislav, eu nunca soube que você poderia fazer isso!fonte
Para codificação de caracteres ANSI:
fonte
maiúsculas (string) e minúsculas (string)
fonte