【问题标题】:xslt to remove single quotes from nodes in xml?xslt 从 xml 中的节点中删除单引号?
【发布时间】:2019-01-25 21:15:42
【问题描述】:

我使用的是 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>

我试过这段代码,但没有结果。任何建议都会有所帮助 谢谢

【问题讨论】:

    标签: xml xslt


    【解决方案1】:

    &amp;quot; 匹配双引号 ",而不是单引号。你应该使用&amp;apos;,虽然你需要这样写...

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

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

    【讨论】:

      【解决方案2】:

      尝试&amp;apos; 而不是&amp;quot;

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多