RE: [xsl] Unicode Search/Replace

Subject: RE: [xsl] Unicode Search/Replace
From: "Pankaj Chaturvedi" <pankaj.chaturvedi@xxxxxxxxx>
Date: Wed, 14 May 2008 18:46:37 +0530
Thanks Michael. Are you suggesting me to use something else other then
<xsl:value-of>, as I want to do search/replace only on text <xsl:template
match="text()"/>.

Thanks.



 -----Original Message-----
From: 	Michael Kay [mailto:mike@xxxxxxxxxxxx]
Sent:	Wednesday, May 14, 2008 5:36 PM
To:	xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject:	RE: [xsl] Unicode Search/Replace


The code in your <xsl:template match="text()"/> is only executed if you
apply-templates to text nodes. It is not evaluated if you process the
contents of text nodes using xsl:value-of.

Michael Kay
http://www.saxonica.com/

> -----Original Message-----
> From: Pankaj Chaturvedi [mailto:pankaj.chaturvedi@xxxxxxxxx]
> Sent: 14 May 2008 12:53
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] Unicode Search/Replace
>
> Hi all,
>
> I am not sure whether I asked this before, but let me take
> chance. I am using the below for search/replace all the
> Unicode entities in my output from [#x....] to &#x....; form.
> Everything works perfect except the cases where I am using
> the Xpath fuctions like "substring", "substring-before",
> "substring-after" etc, and the resulting outputs comes out to
> be again [#x....] format.
>
>
> For example If I have the below markup
>
> <root>
> <coden>xxx xxx &hyphen; xxx xx, Vol. 22, No. 1, January 2008, pp.
> 93-104</coden>
> </root>
>
> and if I use in <root>	<xsl:value-of
> select="substring-before(./coden,
> ',')"/>
>
> I am getting the output like xxx xxx [#x002d] xxx xx while I
> would like xxx xxx &#x002d; xxx xx
>
> <!--  Search Replace  -->
>
> 	<xsl:character-map name="searchreplace">
> 		<xsl:output-character character="&#xE000;"
> string="&amp;"/>
> 	</xsl:character-map>
> 	<xsl:template match="text()">
> 		<xsl:sequence select="replace(.,
> '\[#x([0-9A-Za-z]+)\]', '&#xE000;#x$1;')"/>
> 	</xsl:template>
>
>
> It seems search/replace does not works on text where these
> are functions are used. Any suggestions how to get this done.
>
>
> Best,
>
> Pankaj
>
> <HTML><BODY><P><hr size=1></P>
> <P><STRONG>
>
> Confidentiality Notice:" This message and any attachment(s)
> contained here are information that is confidential,
> proprietary to IDS Infotech Ltd. and its customers.
> Contents may be privileged or otherwise protected by law. The
> information is solely intended for the individual or the
> entity it is addressed to. If you are not the intended
> recipient of this message, you are not authorized to read,
> forward, print, retain, copy or disseminate this message or
> any part of it. If you have received this e-mail in error,
> please notify the sender immediately by return e-mail and
> delete it from your computer."
>
> </STRONG></P></BODY></HTML>

Current Thread