Elemento <xsl:decimal-format> do XSLT
Definição e Uso
<xsl:decimal-format> elemento define o caractere e o símbolo a serem usados quando o número é convertido em string através da função format-number().
Não todos os países usam os mesmos caracteres para separar a parte decimal da parte inteira ou para agrupar números. Através do elemento <xsl:decimal-format>, você pode substituir caracteres específicos por outros símbolos.
Este elemento é um elemento de nível superior (top level).
A função format-number() pode ser referenciada pelo nome (name) do elemento <xsl:decimal-format>.
Sintaxe
<xsl:decimal-format name="name" decimal-separator="char" grouping-separator="char" infinity="string" minus-sign="char" NaN="string" percent="char" per-mille="char" zero-digit="char" digit="char" pattern-separator="char"/>
Atributo
Atributo | Valor | Descrição |
---|---|---|
name | name | Opcional. Especifica um nome para este formato. |
decimal-separator | char | Opcional. Especifica o caractere para o ponto decimal. O padrão é ".". |
grouping-separator | char | Opcional. Especifica o caractere de separação para milhares. O padrão é ",". |
infinity | string | Opcional. Especifica a string usada para representar o infinito. O padrão é "Infinity". |
minus-sign | char | Opcional. Especifica o caractere para o sinal de menos usado para números negativos. O padrão é "-". |
NaN | string | Opcional. Especifica a string usada quando o valor não é um número. O padrão é "NaN". |
percent | char | Opcional. Especifica o caractere para o símbolo de porcentagem. O padrão é "%". |
per-mille | char | Opcional. Especifica o caractere para o símbolo de milhar. O padrão é "‰". |
zero-digit | char | Opcional. Especifica o caractere para o número 0. O padrão é "0". |
digit | char | Opcional. Especifica o caractere, que é usado para indicar onde deve ser usado o número. O padrão é #. |
pattern-separator | char. | Opcional. Especifica o caractere, que é usado para separar os padrões de sinal positivo e negativo no formato. O padrão é ";". |
Exemplo
Exemplo 1
O exemplo a seguir mostra como formatar como moeda europeia (por favor, note que o terceiro parâmetro da função format-number() faz referência ao nome do elemento <xsl:decimal-format>):
<?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:decimal-format name="euro" decimal-separator="," grouping-separator="."/> <xsl:template match="/"> <xsl:value-of select="format-number(26825.8, '#.###,00', 'euro')"/> </xsl:template> </xsl:stylesheet>
Saída:
26.825,80