Subject: Re: [xsl] split string to whole words based on length From: "andrew welch" <andrew.j.welch@xxxxxxxxx> Date: Wed, 26 Apr 2006 17:26:25 +0100 |
On 4/26/06, David Carlisle <davidc@xxxxxxxxx> wrote: > > > <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > version="2.0" > > > > > > <xsl:variable name="str" select="'one,two,three,four,five'" as="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema"/> > <xsl:variable name="length" select="10" as="xs:integer" xmlns:xs="http://www.w3.org/2001/XMLSchema"/> > > <xsl:output indent="yes"/> > > <xsl:template name="x"> > <xsl:analyze-string select="$str" regex=".{{0,{$length}}},"> > <xsl:matching-substring> > <words><xsl:value-of select="substring(.,1,string-length(.)-1)"/></words> > </xsl:matching-substring> > <xsl:non-matching-substring> > <words><xsl:value-of select="."/></words> > </xsl:non-matching-substring> > </xsl:analyze-string> > </xsl:template> > > </xsl:stylesheet> > > > $ saxon8 -it x split.xsl > <?xml version="1.0" encoding="UTF-8"?> > <words>one,two</words> > <words>three,four</words> > <words>five</words> Thanks this is really good... so what's going on in the regex? :) I fear maintenance issues when I have to revisit the code in a few months time.....
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] split string to whole wor, David Carlisle | Thread | Re: [xsl] split string to whole wor, David Carlisle |
Re: [xsl] split string to whole wor, David Carlisle | Date | Re: [xsl] split string to whole wor, David Carlisle |
Month |