Subject: RE: Replacing double quotes with XSLT [faked-from][sls]
From: Mischa Sandberg <MSandberg@xxxxxxxxxxxx>
Date: Mon, 22 Sep 2003 15:11:50 -0700
|
Try assigning the apostrophe to a variable, and tne using the variable:
<xsl:variable name=APOS>'</xsl:variable>
...
"translate(../@OrganizationCode,$APOS,'B'"/>
-----Original Message-----
From: James Paul
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Sent: 22/09/2003 2:38 PM
Subject: RE: Replacing double quotes with XSLT [faked-from][sls]
Even when trying to replace with the " with a single character it does
not work.
Example
<xsl:element name = "OrganizationCode">
<xsl:text>"</xsl:text>
<xsl:value-of select =
"translate(../@OrganizationCode,'\"','B'"/>
<xsl:text>"</xsl:text>
</xsl:element>
-----Original Message-----
From: Passin, Tom [mailto:tpassin@xxxxxxxxxxxx]
Sent: Monday, September 22, 2003 4:01 PM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: RE: Replacing double quotes with XSLT
[ James Paul]
> I'm trying to replace " within a string in XSLT and replace it with ""
> but I'm not having any luck.
>
> Does NOT work
>
> <xsl:element name = "OrganizationCode">
> <xsl:text>"</xsl:text>
> <xsl:value-of select =
> "translate(../@OrganizationCode,'\"','\"\"'"/>
> <xsl:text>"</xsl:text>
> </xsl:element>
>
> Does NOT work
>
> <xsl:element name = "OrganizationCode">
> <xsl:text>"</xsl:text>
> <xsl:value-of select =
> "translate(../@OrganizationCode,'"','""'"/>
> <xsl:text>"</xsl:text>
> </xsl:element>
>
> Does anyone have any suggestions ???
>
Both methods fail because translate() replaces one character with
another single character. You have to write a recursive template - it
is not hard. See Dave Pawson's FAQ pages, especially
http://www.dpawson.co.uk/xsl/sect2/StringReplace.html
Cheers,
Tom P
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|