我有一个带有一些节点的XML文档

<node name="xxx" id="xxx">

我可以使用单个XPATH表达式获取所有属性节点 @id = 7?

有帮助吗?

解决方案

否。您将需要定义要读出的属性 - 一一。

/node[@id=7]/@name 

会得到 name

/node[@id=7]/@id

会得到 id

等等

其他提示

利用:

//@*[not(name()='id') and ../@id = 7]

这选择了所有父母具有的非ID属性 id 带有值的属性 7. 。这将接受 id='7'id=' 7 '

//@*[not(name()='id') and ../@id = '7']

这选择了所有父母具有的非ID属性 id 带有值的属性字符串 '7'. 。这将接受 id='7' 但不是 id=' 7 '

这将选择全部 id 属性 具有值7的节点:

//*/@id[. = '7']
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top