我有以下xml。
<rules>
<rule>
<name>aa</name>
</rule>
<rule>
<name>bb</name>
</rule>
<rule>
<name>cc</name>
</rule>
</rules>
我想通过xslt删除名称为'bb'的规则。所以输出应该是 -
<rules>
<rule>
<name>aa</name>
</rule>
<rule>
<name>cc</name>
</rule>
</rules>
我试过这个,但它不起作用。
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
<xsl:template match="//rules[rule[name[text()='bb']]]">
</xsl:template>
感谢。
答案 0 :(得分:3)
要删除具有name元素的特定规则元素,该元素包含文本,您在匹配中应该只需要:
<xsl:template match="rule[name[text()='bb']]">