Subject: RE: [xsl] Unicode Search/Replace From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Wed, 14 May 2008 14:23:20 +0100 |
Personally, I would put the replace code in a function, and ensure that is called whenever you want to process a relevant string. And I wouldn't do it using character maps, I would generate the actual Unicode character using codepoints-to-string(), and leave the serializer to entitize it on output. Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Pankaj Chaturvedi [mailto:pankaj.chaturvedi@xxxxxxxxx] > Sent: 14 May 2008 14:17 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: RE: [xsl] Unicode Search/Replace > > 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 ‐ 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 - xxx xx > > > > <!-- Search Replace --> > > > > <xsl:character-map name="searchreplace"> > > <xsl:output-character character="" > > string="&"/> > > </xsl:character-map> > > <xsl:template match="text()"> > > <xsl:sequence select="replace(., > > '\[#x([0-9A-Za-z]+)\]', '#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 |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Unicode Search/Replace, Pankaj Chaturvedi | Thread | RE: [xsl] Unicode Search/Replace, Pankaj Chaturvedi |
RE: [xsl] Reusing templates and par, Carl Radley | Date | Re: [xsl] Reusing templates and par, David Carlisle |
Month |