Given below, what I want to do is to chop off the spaces on the left, but
keep the line breaks. The one liner does exactly that - never claimed it was
a replacement of trim()!
One problem though - it leaves one space character in the beginning...
So this...
<someText>
This is some text to check
1) if it does what I want to do
2) Paris is in germany
3) Soccer is a fancy name for ping-pong
I want to remove the 21 white space character from each
line
I want to keep the line breaks, so the format is
maintained.
</someText>
With this xslt:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:strip-space elements="*" />
<xsl:output method="text"/>
<xsl:variable name="vText" select="string(/)"/>
<xsl:template match="/">
<xsl:value-of
select="translate(normalize-space(translate($vText,' ','~')),'~',' '
)" />
</xsl:template>
</xsl:stylesheet>
Will give:
This is some text to check
1) if it does what I want to do
2) Paris is in germany
3) Soccer is a fancy name for ping-pong
I want to remove the 21 white space character from each line
I want to keep the line breaks, so the format is maintained.
---------------------------------
-----Original Message-----
From: Dimitre Novatchev [mailto:dnovatchev(_at_)gmail(_dot_)com]
Sent: Thursday, July 05, 2007 5:51 PM
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: Re: [xsl] xslt 1.1 - one liner
<xsl:value-of select="translate(normalize-space(translate($text,'
','~')),'~',' ')" />
The above code does not implement trim() !
For example, when this transformation:
<xsl:stylesheet version="1.1"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text"/>
<xsl:variable name="vText" select="string(/)"/>
<xsl:template match="/">
"<xsl:value-of
select="translate(normalize-space(translate($vText,'
','~')),'~',' ')" />"
</xsl:template>
</xsl:stylesheet>
is applied against this xml document:
<someText>
This is some text
</someText>
the result is:
" This is some text "
The function f:trim()
(See:
http://fxsl.cvs.sourceforge.net/fxsl/fxsl-xslt2/Tests/testFunc-Trim.xsl?view
=markup)
returns:
'This is some text'
--
Cheers,
Dimitre Novatchev
---------------------------------------
Truly great madness cannot be achieved without significant intelligence.
---------------------------------------
To invent, you need a good imagination and a pile of junk
-------------------------------------
You've achieved success in your field when you don't know whether what
you're doing is work or play
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.476 / Virus Database: 269.10.0/886 - Release Date: 4/7/2007
1:40 PM
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.476 / Virus Database: 269.10.0/886 - Release Date: 4/7/2007
1:40 PM
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--