繁体   English   中英

xslt删除XML中的节点的单引号?

[英]xslt to remove single quotes from nodes in xml?

我正在使用xsl 1.0版本,例如,我有这种xml

<ss>'node1'</ss>
<ss1>'node2'</ss2>

值用单引号引起来。 我想删除那些单引号输出应该是

节点1节点2

<xsl:template match="@*|node()">
    <xsl:copy>
        <xsl:apply-templates select="@*|node()"/>
    </xsl:copy>
</xsl:template>

<xsl:template match="*/text()">
    <xsl:value-of select="translate(., '\&quot;', '')"/>
</xsl:template>

我尝试了这段代码,但没有结果。 任何建议都会帮助你

&quot; 匹配双引号" ,而不是单引号。您应该使用&apos; ,尽管您将需要像这样写它...

<xsl:value-of select='translate(., "&apos;", "")'/>

还要注意,不需要使用\\ ,因为这不是xslt / xpath中的转义字符。 (当然,除非您也打算从文本中删除反斜杠)。

尝试&apos; 而不是&quot;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM