xsl-list
[Top] [All Lists]

RE: substring

2005-02-25 14:14:11
Joris,
 One of your random xml is "Keep it Simle"

rxNum is always fixed digits, say 10. but we may receive sometime 10 or less 
that 10 digits say
1234567890 or sometime just 2 digitst say "23"
if we get 23. we need to pad rxNum to 0000000023
<Rx rxNum="0000000023">
if we get say 78587 we need to pad
<Rx rxNum="0000078587">

-----Original Message-----
From: Joris Gillis [mailto:roac(_at_)pandora(_dot_)be]
Sent: Friday, February 25, 2005 4:00 PM
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: Re: [xsl] substring


Tempore 21:29:27, die 02/25/2005 AD, hinc in  
xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com scripsit Bhaskar, Rajan 
<RBhaskar(_at_)cvs(_dot_)com>:

Thanks Joris.
How can i pad an attribute value with (zeros) if the lenght is less that  
a fixed length
suppose i have
<Rx rxNum="1234"> but when transforming it should be 10 digits with left  
padded 000 like
<Rx rxNum="0000001234">

Something like:

<xsl:template match="Rx">
        <xsl:copy>
                <xsl:apply-templates select="@*" />
        </xsl:copy>
</xsl:template>

<xsl:template match="@rxNum[string-length() &lt; 10]">
        <xsl:attribute name="rxNum">
                <xsl:value-of  
select="substring(concat('0000000000',.),string-length()+1,10)"/>
        </xsl:attribute>
</xsl:template>

<xsl:template match="@rxNum"><xsl:copy-of select="."/></xsl:template>



but sometimes we may just get <Rx rxNum="23"/>
What condition is linked to "sometimes"?

regards,
-- 
Joris Gillis (http://www.ticalc.org/cgi-bin/acct-view.cgi?userid=38041)
"Φιλήκοον ειναι µαλλον η φιλόλαλον"  - Κλεόßουλος

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>