我正在尝试使用XPath快速查找特定节点,但似乎我的多个谓词不起作用。我需要的div有一个特定的类,但还有其他3个拥有它。我想选择第四个,所以我做了以下几点:
//div[@class='myCLass' and 4]
然而,“4”被忽略了。有帮助吗?我是XPath的新手。
感谢。
答案 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]