Subject: RE: [xsl] Move leading/trailing spaces outside (XSLT 2.0) From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Tue, 6 Feb 2007 14:00:11 -0000 |
I would do <xsl:template match="e"> <xsl:analyze-string select="." regex="^\s*.*?\s*$"> <xsl:matching-substring> <xsl:value-of select="regex-group(1)"/> <e><xsl:value-of select="regex-group(2)"/></e> <xsl:value-of select="regex-group(3)"/> </ </ </ Not tested. Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Yves Forkl [mailto:Y.Forkl@xxxxxx] > Sent: 06 February 2007 13:51 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: [xsl] Move leading/trailing spaces outside (XSLT 2.0) > > Hi, > > I'm looking for an elegant XSLT 2.0 solution to this tiny > problem. When processing > > <e> one</e> > <e>two </e> > <e> three </e> > > I want to separate the leading and trailing spaces from the > rest of the content but keep them in the output as text > nodes, like if I was saying in XSLT > > <xsl:text> </xsl:text><e>one</e> > <e>two</e><xsl:text> </xsl:text> > <xsl:text> </xsl:text><e>three</e><xsl:text> </xsl:text> > > normalize-space() won't tell me how much spaces it removed, > and there must be a less awkward way than using xsl:choose > with 3 clauses... > > Any suggestions? Should I try with tokenize() or matches()? > > Yves
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Move leading/trailing spaces , Yves Forkl | Thread | Re: [xsl] Move leading/trailing spa, Martin Honnen |
RE: [xsl] Getting the root namespac, Michael Kay | Date | Re: [xsl] Move leading/trailing spa, Martin Honnen |
Month |