XSLT <xsl:decimal-format> Elementi

Tanım ve Kullanım

<xsl:decimal-format> elementi, format-number() fonksiyonu ile sayıları stringe dönüştürdüğünüzde kullanılacak karakterleri ve sembolleri tanımlar.

Tüm ülkeler, ondalık ve tamsayı kısımlarını ayırmak veya sayıları gruplamak için aynı karakterleri kullanmaz. <xsl:decimal-format> elementi ile, belirli karakterleri diğer sembollere değiştirebilirsiniz.

Bu element üst düzey bir elementtir (top level).

format-number() fonksiyonu, <xsl:decimal-format> elementine adı (name) ile referans verebilir.

Sözdizimi

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

Özellik

Özellik Değer Açıklama
name name Opsiyonel. Bu formata ad belirler.
decimal-separator char Opsiyonel. Ondalık noktası karakterini belirler. Varsayılan "." dir.
grouping-separator char Opsiyonel. Binlerlik ayracını belirler. Varsayılan "," dir.
infinity string Opsiyonel. Sonsuzluğu belirten dizesi belirler. Varsayılan "Infinity" dir.
minus-sign char Opsiyonel. Negatif sayıları belirten karakteri belirler. Varsayılan "-" dir.
NaN string Opsiyonel. Değer sayısal değilse kullanılacak dizesi belirler. Varsayılan "NaN" dir.
percent char Opsiyonel. Yüzde işaretini belirler. Varsayılan "%" dir.
per-mille char Opsiyonel. Binlik ayracını belirler. Varsayılan "‰" dir.
zero-digit char Opsiyonel. Sayı 0 için kullanılan karakteri belirler. Varsayılan "0" dir.
digit char Opsiyonel. Sayısal olmayan yerleri belirtmek için kullanılan karakteri belirler. Varsayılan # dir.
pattern-separator char. Opsiyonel. Format modelindeki pozitif ve negatif alt modülleri ayıran karakteri belirler. Varsayılan ";" dir.

Örnek

Örnek 1

Aşağıdaki örnek, Avrupa para birimini nasıl biçimlendireceğini gösterir (lütfen, format-number() fonksiyonundaki üçüncü parametrenin <xsl:decimal-format> elementinin adına işaret ettiğini unutmayın):

<?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>

Çıktı:

26.825,80