[Home] [By Thread] [By Date] [Recent Entries]
First parse the string and convert to a sequence of integers,
something like:
<xsl:for-each select="tokenize(., ',\s+')"> <xsl:choose> <xsl:when test="contains(., '-')"> <xsl:sequence select="xs:integer(substring-before(., '-') to xs:integer(substring-after(., '-')"/> </ <xsl:otherwise> <xsl:sequence select="xs:integer(.)"/> </ </ </ Then do grouping using a method first suggested by David Carlisle on this list: <xsl:for-each-group select="..." group-adjacent=". - position()"> <xsl:choose> <xsl:when test="count(current-group()) gt 1"> <xsl:value-of select="current-group()[1], current-group()[last()]" separator="-"/> </ <xsl:otherwise> <xsl:value-of select="current-group()[1]"/> </ </ </ On 21/09/2010 8:09 AM, Jeff Sese wrote: Hi,
|

Cart



