Xpath多个谓词

时间:2013-10-21 18:38:25

标签: xpath

我正在尝试使用XPath快速查找特定节点,但似乎我的多个谓词不起作用。我需要的div有一个特定的类,但还有其他3个拥有它。我想选择第四个,所以我做了以下几点:

//div[@class='myCLass' and 4]

然而,“4”被忽略了。有帮助吗?我是XPath的新手。

感谢。

3 个答案:

答案 0 :(得分:3)

如果xpath查询返回一个节点集,您始终可以使用[OFFSET]运算符来访问它的某个元素。

使用以下查询访问与@class='myClass'谓词匹配的第四个元素:

//div[@class='myCLass'][4]

@WilliamNarmontas的答案可能是上述语法的替代方案。

答案 1 :(得分:3)

可替换地,

//div[@class='myCLass' and position()=4]

答案 2 :(得分:3)

只有当所有div元素具有相同的父元素时,接受的答案才能正常工作。否则使用:

(//div[@class='myCLass'])[4]