The following XSLT gives you what you want...
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:variable name="string_Comma_Delimited">a, b, c, d, e, f,
g</xsl:variable>
<xsl:template match="/">
<table>
<xsl:call-template name="parseString">
<xsl:with-param name="list" select="$string_Comma_Delimited"/>
</xsl:call-template>
</table>
</xsl:template>
<xsl:template name="parseString">
<xsl:param name="list"/>
<xsl:if test="contains($list, ',')">
<tr>
<td><xsl:value-of select="substring-before($list, ',')"/></td>
</tr>
<xsl:call-template name="parseString">
<xsl:with-param name="list" select="substring-after($list, ', ')"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
The preceding gives you the result:
<table>
<tr>
<td>a</td>
</tr>
<tr>
<td>b</td>
</tr>
<tr>
<td>c</td>
</tr>
<tr>
<td>d</td>
</tr>
<tr>
<td>e</td>
</tr>
<tr>
<td>f</td>
</tr>
</table>
Keep in mind that if there is not a space after each comma delimiter then
you will need to remove the space from the substring-after function like so:
substring-after($list, ',')
Best regards,
M.
----- Original Message -----
From: "Archana Rao" <archana_heroor(_at_)yahoo(_dot_)com>
To: <xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com>
Sent: Wednesday, January 14, 2004 2:59 PM
Subject: [xsl] splitting a string at ,
I have a string seperated with commas. I am trying to
split the string at commas.
How can this be done.
Thanks
Archana
__________________________________
Do you Yahoo!?
Yahoo! Hotjobs: Enter the "Signing Bonus" Sweepstakes
http://hotjobs.sweepstakes.yahoo.com/signingbonus
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list