I think this kind of problem requires recursion even in 2.0: at least, if
you want it to be remotely efficient.
Michael Kay
http://www.saxonica.com/
-----Original Message-----
From: andrew welch [mailto:andrew(_dot_)j(_dot_)welch(_at_)gmail(_dot_)com]
Sent: 26 April 2006 16:06
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] split string to whole words based on length
I'm sure there's a good xslt 2.0 way of doing this that
doesn't involve a recursive named template or function. In
fact I'm sure it's come up a few times but I can't find it in
the archives.
Given a string of comma delimeted words and a length, split
the string into substrings so that whole words are kept
intact with proper use of the delimiter, where no string
exceeds the length.
So, given the following:
<xsl:variable name="str" select="'one,two,three,four,five'"
as="xs:string"/> <xsl:variable name="length" select="10"
as="xs:integer"/>
Should be output as:
<words>one,two</words>
<words>three,four</words>
<words>five</words>
As I say, I'm sure there's a quality solution to this, rather
than the long winded recursive approach.
Any takers?
--~------------------------------------------------------------------
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>
--~--
--~------------------------------------------------------------------
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>
--~--