[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: replace a character in an element
On 7/19/05, Dariusz Borowski <d.borowski@xxxxxx> wrote: > > Hi! > > I would like to replace a character in a string. Because it is a quote and mySQL-Database doesn't accept it, but I don't know how. > > Here is the string-element: > ====================== > <description-list> > <paragraph> > The term "project plan" is used throughout the generic and specific practices in this process area to refer to the overall plan for controlling the project. > </paragraph> > </description-list> > ====================== > > > At first I tried to find the element with the quotes as follows: > ====================== > <xsl:when test="contains(., '"')"> > <!-- <div class="red"><xsl:value-of select="." /></div><br/><br/>--> > </xsl:when> > > <xsl:otherwise> > "<xsl:value-of select="." />");<br/><br/> > </xsl:otherwise> > ====================== > > This works, but now I would like to get an output like this: > ====================== > The term \"project plan\" is used throughout the generic and specific practices in this process area to refer to the overall plan for controlling the project. > ====================== > > I appreciate for any help! > It takes 1-2 minutes to produce a solution using FXSL. This transformation: <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:testmap="testmap" exclude-result-prefixes="xsl testmap" > <xsl:import href="str-dvc-map.xsl"/> <testmap:testmap/> <xsl:output omit-xml-declaration="yes" indent="yes"/> <xsl:template match="/"> <xsl:variable name="vTestMap" select="document('')/*/testmap:*[1]"/> <xsl:call-template name="str-map"> <xsl:with-param name="pFun" select="$vTestMap"/> <xsl:with-param name="pStr" select="string(/*)"/> </xsl:call-template> </xsl:template> <xsl:template name="escapeQuoteNL" match="testmap:*"> <xsl:param name="arg1"/> <xsl:if test="$arg1='"'"> <xsl:value-of select="'\'"/> </xsl:if> <xsl:value-of select="$arg1"/> </xsl:template> </xsl:stylesheet> when applied on this xml document: <description-list> <paragraph> The term "project plan" is used throughout the generic and specific practices in this process area to refer to the overall plan for controlling the project. </paragraph> </description-list> produces the wanted result: The term \"project plan\" is used throughout the generic and specific practices in this process area to refer to the overall plan for controlling the project. Cheers, Dimitre Novatchev.
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|