xml – 如何编写一个xpath来匹配除特定元素之外的所有元素

前端之家收集整理的这篇文章主要介绍了xml – 如何编写一个xpath来匹配除特定元素之外的所有元素前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在编写一个XSL转换.我想编写一个模板,它与文档的所有子元素匹配,除了一个特定的节点.我的xml看起来像这样 –
<Document>
    <NodeA></NodeA>

    <NodeB></NodeB>

    <ServiceNode></ServiceNode>

    <NodeX></NodeX>
</Document>

我想写一个模板,匹配除ServiceNode之外的所有节点,即NodeA到NodeX.如何写这个Xpath来获取

<xsl:template match="ALL Nodex Except ServiceNode">

I want to write a template that
matches all nodes except ServiceNode
i.e. NodeA to NodeX.

如果通过“节点”表示元素,则使用:

<xsl:template match="*[not(self::ServiceNode)]">

如果通过“节点”表示任何节点(元素,文本,注释,处理指令):use

<xsl:template match="node()[not(self::ServiceNode)]">

如果您只想要匹配文档的子项,请使用:

<xsl:template match="Document/node()[not(self::ServiceNode)]">

如果你只想要匹配顶级元素的孩子使用:

<xsl:template match="/*/node()[not(self::ServiceNode)]">
原文链接:/xml/292877.html

猜你在找的XML相关文章