XPath用于查找具有属性的元素

时间:2010-03-12 18:58:07

标签: xpath

如何查找至少包含一个属性的元素?

示例:

<tr>...</tr>
<tr style="">...</tr>
<tr width="">...</tr>

我想要所有tr元素但是......

我尝试过跟踪xpat​​h,但它不起作用。

//table//tr[contains(attributes::*,'')]

由于

1 个答案:

答案 0 :(得分:3)

这应该这样做:

//table/tr[@*]

您的工作不起作用的原因是,当第二个参数为contains()时,''将始终返回true。当表达式返回方括号内的节点集时,如果它是非空的则认为是真的,如果它是空的则认为是假的。所以[@*]将返回所有属性的集合,并且如果存在任何属性将被解释为真。