RE: [xsl] Math: Removing X number of zeroes from number Y.

Subject: RE: [xsl] Math: Removing X number of zeroes from number Y.
From: "Andrew Welch" <ajwelch@xxxxxxxxxxxxxxx>
Date: Mon, 6 Jun 2005 15:41:43 +0100
> I have a fare element that is returned as, for example,
> 79000. The decimal point value is specified in another
> element as for example 2. Therefore the number should be: 790.00
>
> There's a way to do this mathematically:
>
> Where x=DecimalPoint, and y=fare, the forumla would be y/(10^x)
>
> But as far as I know there's no exponential function in XSLT
> 1.0. I'm using, or rather, _have_ to use MSXML, I can't go
> for FXSLT, etc.
>
> It's worth mentioning that fare is of type 'double' and
> DecimalPoint is of type 'short'
>
> Anyone have any ideas on how to do this in plain XSL ?


<xsl:value-of select="concat(substring(.,0,string-length(.) - $dp + 1),
'.', substring(.,string-length(.) - $dp + 1))"/>

$dp is the number of decimal places.

cheers
andrew

Current Thread