我有以下HTML:
<div>
<p>foo</p>
<p class='foo'>foo</p>
<p class='foo'>foo</p>
<p>bar</p>
</div>
如何通过XPath选择第二个带有'foo'类的P标签?
答案 0 :(得分:29)
以下表达式应该这样做:
//p[@class="foo"][2]
编辑:这里使用[2]
根据兄弟姐妹的位置选择元素,而不是匹配的节点。由于您的两个表都是其父元素的第一个子元素,因此[1]
将匹配它们,而[2]
则不匹配。如果您想在整个文档中使用第二个这样的元素 ,则需要将表达式放在括号中,以便[2]
应用于节点集:
(//p[@class="foo"])[2]
(//table[@class="info"])[2]