Subject: Re: [xsl] translating and commenting punctuation [XSLT1.0] From: pankaj.c@xxxxxxxxxxxxxxxxxx Date: Thu, 24 Feb 2011 17:59:44 +0530 |
Thanks Martin. How can I forget that. Thanks a ton. Martin Honnen <Martin.Honnen@xxxxxx> 02/24/11 05:49 PM Please respond to xsl-list@xxxxxxxxxxxxxxxxxxxxxx To xsl-list@xxxxxxxxxxxxxxxxxxxxxx cc Subject Re: [xsl] translating and commenting punctuation [XSLT1.0] pankaj.c@xxxxxxxxxxxxxxxxxx wrote: > Hello everybody, > > I am trying to translate "," in text to new line while keeping a copy of > it in comment. Some thing like below: > > XML > === > > <mytext>xxxx, yyyy, zzzzz, ttttt</mytext> > > Output Required > ========== > > <mytext>xxxx<!--,--> > yyyy<!--,--> > zzzzz<!--,--> > ttttt</mytext> Your subject says XSLT 1.0 so here is an XSLT 1.0 approach: <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template name="replace"> <xsl:param name="text"/> <xsl:param name="char" select="','"/> <xsl:choose> <xsl:when test="not(contains($text, $char))"> <xsl:value-of select="$text"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="substring-before($text, $char)"/> <xsl:comment> <xsl:value-of select="$char"/> </xsl:comment> <xsl:text> </xsl:text> <xsl:call-template name="replace"> <xsl:with-param name="text" select="substring-after($text, $char)"/> <xsl:with-param name="char" select="$char"/> </xsl:call-template> </xsl:otherwise> </xsl:choose> </xsl:template> <xsl:template match="mytext"> <xsl:copy> <xsl:call-template name="replace"> <xsl:with-param name="text" select="."/> </xsl:call-template> </xsl:copy> </xsl:template> </xsl:stylesheet> -- Martin Honnen http://msmvps.com/blogs/martin_honnen/
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] translating and commentin, Martin Honnen | Thread | [xsl] Where (how) to use XML/XSLT i, Jeffry Proctor |
Re: [xsl] translating and commentin, pankaj . c | Date | [xsl] Where (how) to use XML/XSLT i, Jeffry Proctor |
Month |