Subject: Re: Not-quite normalize-space()
From: David Carlisle <davidc@xxxxxxxxx>
Date: Fri, 30 Mar 2007 09:31:54 +0100
|
As Michael has said all of these would be a simple call to replace() in
2.0, in 1,0 then if by "retain" you mean keep a single white space if
there is any white space:
a) strip off leading WS, retain trailing WS, and normalize the rest
<xsl:variable name="x" select="concat(.,'!@@@!')"/>
<xsl:value-of select="substring-before(normalize-space($x),'!@@@!')"/>
b) retain leading WS, strip off trailing WS, normalize the rest
<xsl:variable name="x" select="concat('!@@@!',.)"/>
<xsl:value-of select="substring-after(normalize-space($x),'!@@@!')"/>
c) retain leading and trailing WS, normalize the rest
<xsl:variable name="x" select="concat('!+++!.,'!@@@!')"/>
<xsl:value-of select="substring-after(substring-before(normalize-space($x),'!@@@!'),!+++!')"/>
David
|