|
Subject: RE: [xsl] Reverse Tokens Template From: Américo Albuquerque <aalbuquerque@xxxxxxxxxxxxxxxx> Date: Fri, 16 May 2003 19:13:12 +0100 |
Hi.
Try this template:
<xsl:template name="reverse">
<xsl:param name="str" select="string(.)"/>
<xsl:param name="res" select="''"/>
<xsl:param name="sep" select="''"/>
<xsl:choose>
<xsl:when test="contains($str,' ')">
<xsl:call-template name="reverse">
<xsl:with-param name="str" select="substring-after($str,' ')"/>
<xsl:with-param name="sep" select="' '"/>
<xsl:with-param name="res" select="concat(substring-before($str,'
'),$sep,$res)"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="concat($str,$sep,$res)"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
It recursively breaks the string on the space char and concat each peace
backwardly.
Hope that this helps you
Américo Albuquerque
> -----Original Message-----
> From: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> [mailto:owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of
> Greene, Stephen
> Sent: Thursday, May 15, 2003 3:39 PM
> To: XSL List (E-mail)
> Subject: [xsl] Reverse Tokens Template
>
>
> Hi,
>
> I have been trying to modify (un-sucessfully) Dimitre
> Novatchev's template to reverse the order of "words" in a
> string (words being character substrings seperated by a space
> character). Such that the string "hello world" would become
> "world hello". I was wondering if anyone would be able to
> offer any hints on how to accomplish this.
>
> I have tried modifying the template but as the word length is
> variable, (and the words need to go back into a string, and
> not be output) I have been unsuccessful in concatenating the
> string after removing one word at a time.
>
> If this is not possible, is there a way in which I could
> remove one word at a time from the end of the string? (in a
> substring-before($theString, ' ') like way) Instead of the beginning?
>
> I thank you for your time and for your help,
>
> Regards,
>
> Stephen Greene
>
> National Research Council of Canada
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| [xsl] Re: Reverse Tokens Template, Dimitre Novatchev | Thread | RE: [xsl] Reverse Tokens Template, David Neary |
| [xsl] Part 2 published: Style styl, Joseph Kesselman | Date | Re: [xsl] An interesting angle on t, Mike Haarman |
| Month |