[xsl] values in sequence after tokenize

Subject: [xsl] values in sequence after tokenize
From: "andrew welch" <andrew.j.welch@xxxxxxxxx>
Date: Tue, 11 Jul 2006 14:56:12 +0100
Given a string of characters:

<xsl:variable name="string" select="'aa^a^aaa^aaaaaa^aa^aa^aaaaaa^'"/>

I want to break that string into substrings up to a given length, so
that the words including circumflexes ('^') are no longer than the
specified length.

I'm trying do this with a regex (in this example the length is 6):

<xsl:variable name="substring" select="tokenize($string, '.{1,6}\^')"
as="xs:string*"/>

This regex must be wrong because $substring now holds a sequence of 6
items (as expected), but each of those items appears to be ' '.  For
example this bit of debug:

x<xsl:value-of select="for $y in $substring return concat($y, 'z')"/>x

produces:

xz z z z z zx

What's the correct regex for this problem?

thanks
andrew

Current Thread