This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re[2]: [XSL] How to order numeric data containing comm
- To: xsl-list at lists dot mulberrytech dot com
- Subject: Re[2]: [xsl] [XSL] How to order numeric data containing comm
- From: Steven dot C dot Kienle at am dot pnu dot com
- Date: Tue, 8 May 2001 07:52:17 -0400
- Reply-To: xsl-list at lists dot mulberrytech dot com
If, on the other hand, you are using commas as "thousand" separators,
you can use transform this way:
<xsl:sort select="translate(., ',', '0')" data-type="number"/>
This will change "1,000" to "10000". While this doesn't maintain the
numerical value, it will "inflate" the values equally. I.E. 1,001 >
1,000 therefore 10001 > 10000.
This will not work if the comma is being used for the decimal
separator; so it is important to understand the data you are receiving
before trying to solve the problem.
Steve
______________________________ Reply Separator _________________________________
Subject: RE: [xsl] [XSL] How to order numeric data containing commas?
Author: "Michael Kay" <mhkay@iclway.co.uk> at Internet-America
Date: 07-05-2001 5:31 PM
> Does anyone know how to get a numbers that contain commas to
> order properly
> in XSL.
In XSLT 1.0, numbers cannot contain commas. There are facilities for
formatting numbers with commas (either as a decimal point or as a grouping
character) on output, but none for parsing such numbers as input.
If you're using the comma as a decimal point, you could use translate() to
convert it to a full stop / period.
Mike Kay
Software AG
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list