[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Trim() as a single XPath expression (Was: Re: Count le
--- Dimitre Novatchev <dnovatchev@xxxxxxxxx> wrote: > What seems to be simpler: > > string-length(substring-before($x, > substring(normalize-space($x), 1, 1) > ) > ) > > > ===== > Cheers, > > Dimitre Novatchev. > http://fxsl.sourceforge.net/ -- the home of FXSL Thanks to Grainne Reilly, who raised the problem of getting the count of leading blanks of a string, I've come to a single XPath expression that returns a trimmed string. If we have the following source xml: ----------------------------------- <t> xyz a b c </t> Four leading spaces and two trailing ones. and this transformation: ----------------------- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="text"/> <xsl:variable name="x" select="string(/)"/> <xsl:template match="/"> Original string: <xsl:text/> '<xsl:value-of select="$x"/>' Leading blanks: <xsl:text/> <xsl:value-of select="string-length(substring-before($x, substring(normalize-space($x), 1, 1) ) )"/> Trailing blanks: <xsl:text/> <xsl:value-of select="string-length(substring-after($x, substring(normalize-space($x), string-length(normalize-space($x)), 1 ) ) )"/> Trimmed: <xsl:text/> '<xsl:value-of select="substring($x, string-length(substring-before($x, substring(normalize-space($x), 1, 1) ) ) + 1, string-length($x) - string-length( substring-before($x, substring(normalize-space($x), 1, 1) ) ) - string-length( substring-after ($x, substring(normalize-space($x), string-length( normalize-space($x) ), 1) ) ) )"/>' </xsl:template> </xsl:stylesheet> The result is: ------------- Original string: ' xyz a b c ' Leading blanks: 4 Trailing blanks: 2 Trimmed: 'xyz a b c' ===== Cheers, Dimitre Novatchev. http://fxsl.sourceforge.net/ -- the home of FXSL __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus - Powerful. Affordable. Sign up now. http://mailplus.yahoo.com XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|