Elemento <xsl:decimal-format> di XSLT

Definizione e utilizzo

L'elemento <xsl:decimal-format> definisce i caratteri e i simboli da utilizzare quando si converte un numero in una stringa utilizzando la funzione format-number().

Non tutte le nazioni utilizzano lo stesso carattere per separare la parte decimale dall'intero o per raggruppare i numeri. Attraverso l'elemento <xsl:decimal-format>, è possibile sostituire i simboli specifici con altri caratteri.

Questo elemento è un elemento di livello superiore (top level).

La funzione format-number() può essere richiamata tramite il nome (name) dell'elemento <xsl:decimal-format>.

Sintassi

<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"/>

Proprietà

Proprietà Valore Descrizione
name name Opzionale. Specifica un nome per questo formato.
decimal-separator char Opzionale. Specifica il carattere per il punto decimale. Predefinito è ".".
grouping-separator char Opzionale. Specifica il carattere di separazione per le migliaia. Predefinito è ",".
infinity string Opzionale. Specifica la stringa utilizzata per rappresentare l'infinito. Predefinito è "Infinity".
minus-sign char Opzionale. Specifica il carattere utilizzato per rappresentare il numero negativo. Predefinito è "-".
NaN string Opzionale. Specifica la stringa utilizzata quando il valore non è un numero. Predefinito è "NaN".
percent char Opzionale. Specifica il carattere per il simbolo di percentuale. Predefinito è "%".
per-mille char Opzionale. Specifica il carattere per il simbolo di migliaia. Predefinito è "‰".
zero-digit char Opzionale. Specifica il carattere per il numero 0. Predefinito è "0".
digit char Opzionale. Specifica il carattere, utilizzato per indicare dove deve essere utilizzato un numero. Predefinito è #.
pattern-separator char. Opzionale. Specifica il carattere, utilizzato per separare i modelli di formato positivo e negativo. Predefinito è ";".

Esempio

Esempio 1

Esempio: come formattare in valuta europea (si prega di notare che il terzo parametro della funzione format-number() fa riferimento al nome dell'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>

Output:

26.825,80