องค์ประกอบ <xsl:decimal-format> ของ XSLT

คำนิยามและวิธีใช้

<xsl:decimal-format> องค์ประกอบนี้กำหนดสัญลักษณ์และสัญญาณที่ใช้ในการแปลงตัวเลขเป็นตัวอักษรโดยผ่านฟังก์ชัน format-number()

ไม่ทุกประเทศใช้อักษรเดียวกันในการแบ่งส่วนของจำนวนทศนิยมและจำนวนเต็ม หรือในการทำนายจำนวน. ด้วยองค์ประกอบ <xsl:decimal-format> คุณสามารถเปลี่ยนสัญญาณต่างกันเป็นสัญญาณอื่น

องค์ประกอบนี้เป็นองค์ประกอบระดับสูงสุด (top level).

ฟังก์ชัน format-number() สามารถเรียกใช้ <xsl:decimal-format> ด้วยชื่อ (name).

วลี

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

คุณสมบัติ

คุณสมบัติ ค่า รายละเอียด
name name ตัวเลือกอย่าง. กำหนดชื่อสำหรับรูปแบบนี้.
decimal-separator char ตัวเลือกอย่าง. กำหนดอักษรของจุดทศนิยม. โดยเริ่มต้นค่าเป็น ".".
grouping-separator char ตัวเลือกอย่าง. กำหนดอักษรที่ใช้ในการแบ่งตัวเลขที่มีหลายหมื่น. โดยเริ่มต้นค่าเป็น ",".
infinity string ตัวเลือกอย่าง. กำหนดตัวเลือกที่ใช้ในการแสดงว่าค่าเป็นไม่จำกัด. โดยเริ่มต้นค่าเป็น "Infinity".
minus-sign char ตัวเลือกอย่าง. กำหนดอักษรที่ใช้ในการแสดงเช่นว่าค่าเป็นลบ. โดยเริ่มต้นค่าเป็น "-".
NaN string ตัวเลือกอย่าง. กำหนดตัวเลือกที่ใช้เมื่อค่าไม่ใช่ตัวเลข. โดยเริ่มต้นค่าเป็น "NaN".
percent char ตัวเลือกอย่าง. กำหนดอักษรของสัญญาณเปอร์เซ็นต์. โดยเริ่มต้นค่าเป็น "%".
per-mille char ตัวเลือกอย่าง. กำหนดอักษรของเศษพัน. โดยเริ่มต้นค่าเป็น "‰".
zero-digit char ตัวเลือกอย่าง. กำหนดอักษรของตัวเลข 0. โดยเริ่มต้นค่าเป็น "0".
digit char ตัวเลือกอย่าง. กำหนดอักษรซึ่งใช้ในการหนายว่าต้องใช้ตัวเลขที่ไหน. โดยเริ่มต้นค่าเป็น #.
pattern-separator char. ตัวเลือกอย่าง. กำหนดอักษรซึ่งใช้ในการแบ่งแบบรูปแบบที่มีลักษณะบวกและลบ. โดยเริ่มต้นค่าเป็น ";".

ตัวอย่าง

ตัวอย่าง 1

ตัวอย่างนี้แสดงว่าเคยใช้รูปแบบเงินยุโรป (โปรดระวังว่าตัวเลขที่สามของฟังก์ชัน format-number() หมายถึงชื่อขององค์ประกอบ 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>

ออกแบบ:

26.825,80