2016-09-14 2 views
-1

Ich muss ein einzelnes Anführungszeichen durch doppelte Anführungszeichen ersetzen.Wie kann man in XSLT 1.0 ein einzelnes Apostroph durch ein doppeltes Apostroph ersetzen?

Zum Beispiel: input = Ram

Also muss ich einen Ausgang als Ram "s

Wie in XSLT 1.0 tun? Bitte hilf mir!

+0

Bitte überprüfen Sie: [MCVE]. –

+0

Mögliches Duplikat von [So ersetzen Sie "einfaches Anführungszeichen" in "doppeltes Anführungszeichen" in XSLT] (http://stackoverflow.com/questions/30339128/how-to-replace-single-quote-to-double-single- Zitat-in-xslt) –

Antwort

0

Es funktioniert für mich!

<xsl:template match="name"> 
    <xsl:copy> 
    <xsl:call-template name="replace"> 
    <!-- Here getting the replaced values --> 
    <xsl:with-param name="text" select="."/> 

    </xsl:call-template> 
    </xsl:copy> 
    </xsl:template> 

    <xsl:template name="replace"> 
    <xsl:param name="text"/> 
    <xsl:param name="searchString">'</xsl:param> 
    <xsl:param name="replaceString">''</xsl:param> 
    <xsl:choose> 
    <xsl:when test="contains($text,$searchString)"> 
    <xsl:value-of select="substring-before($text,$searchString)"/> 
    <xsl:value-of select="$replaceString"/> 
    <!-- recursive call --> 
    <xsl:call-template name="replace"> 
    <xsl:with-param name="text" select="substring-after($text,$searchString)"/> 
    <xsl:with-param name="searchString" select="$searchString"/> 
    <xsl:with-param name="replaceString" select="$replaceString"/> 
    </xsl:call-template> 
    </xsl:when> 
    <xsl:otherwise> 
    <xsl:value-of select="$text"/> 
    </xsl:otherwise> 
    </xsl:choose> 
    </xsl:template> 
+0

Danke Pradeep! –

+0

Es hat mir geholfen michael.hor257k antwort! [michael.hor257k - Antwort] (http://stackoverflow.com/questions/30339128/how-to-replace-single-quote-to-double-single-quote-in-xslt) –

Verwandte Themen