XSLT:模板匹配所有路径不包含元素的元素



我有一个XML文件,如下一个。我需要使用XSLT 1.0选择所有"名称"元素,其中路径不包含单词"快速"。在这种情况下

我的原始模板匹配器是

<xslt:template match="/root//name">
    ....
</xslt:template>

这起作用,但添加了"快速"元素,因此我的选择器破裂了。

我该如何在XSLT 1.0中执行此操作?我一直在尝试多种方法,但是我似乎找不到一种可以编译并做我需要的方法。

谢谢大家。

<root>
    <fast>
        <name>fast/name</name>
    </fast>
    <name>name</name>
    <name>
        <name>name/name</name>
    </name>
</root> 

您可以使用以下方式:

如果您的数据与

的数据运行
<xsl:template match="/root//name[not(contains(., 'fast'))]">

,或者如果您在元素上以

的速度运行
<xsl:template match="/root//name[not(ancestor::fast)]">

相关内容

  • 没有找到相关文章

最新更新