XPath:选择**具有特定名称的子元素

Tho*_*mas 58 xpath

<a>
   <b/>
   <c/>
   <d/>
   <b/>
   <e/>
</a>
Run Code Online (Sandbox Code Playgroud)

如何选择那些不是"b"的"a"的孩子?

Aak*_*shM 93

/a/*[not(self::b)]

  • @Lucero:我欠@Tomalak的想法:) (3认同)
  • @Sailaja:我认为你应该提出自己独立的问题.当你这样做时,一定要通过获取节点b而不是它的子节点来解释你的意思 - 当xpath选择一个节点时,节点仍然*有*它的子节点...... (2认同)
  • @UmairAshraf如果您有其他问题,您应该[提出新问题](http://stackoverflow.com/questions/ask) (2认同)

Mar*_*nen 14

使用XPath 2.0,你甚至可以做到

/a/(* except b)
Run Code Online (Sandbox Code Playgroud)