请问xpath如何在指定class的同时指定选择第某个?

我已经知道指定class的写法是://*[@class='class']
也已经知道选择第某个的写法是://div[n]
请问将这两者结合的写法应该是怎样的呢?比如选择class='class'的最后一个元素。
求不吝赐教。

尝试过的写法:
图片描述

阅读 8.5k
2 个回答

xpath 语法可以实现你的要求,不必重造轮子。

举个例子,定位含有类 title 的最后一个 h2 元素,xpath 可以这样

(//h2[@class="title"])[last()]

请注意一定要使用括号,因为 [ ] 的优先级较高。


顺便提一下,在谷歌浏览器开发者工具(console,按 F12 打开)中,用 $x(...) 便可执行 xpath 查询。

参考

xpath 语法文档, https://www.w3schools.com/xml...

基于下面的回答修改答案

// 这种写法是没错,但是前面部分需要加括号才行
//*[@class='class'][last()] // 取不到值
(//*[@class='class'])[last()] // 表示最后一个div 倒数第二个为[last-1]
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏