xsl-list
[Top] [All Lists]

RE: [xsl] Unicode Search/Replace

2008-05-14 06:16:35
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(_at_)saxonica(_dot_)com]
Sent:   Wednesday, May 14, 2008 5:36 PM
To:     xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
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(_dot_)chaturvedi(_at_)idsil(_dot_)com]
Sent: 14 May 2008 12:53
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
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>

--~------------------------------------------------------------------
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>
--~--



--~------------------------------------------------------------------
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>
--~--



--~------------------------------------------------------------------
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>
--~--

<Prev in Thread] Current Thread [Next in Thread>