类和索引的XPath选择器

时间:2011-11-09 11:57:41

标签: xpath

我有以下HTML:

<div>
  <p>foo</p>
  <p class='foo'>foo</p>
  <p class='foo'>foo</p>
  <p>bar</p>
</div>

如何通过XPath选择第二个带有'foo'类的P标签?

1 个答案:

答案 0 :(得分:29)

以下表达式应该这样做:

//p[@class="foo"][2]

编辑:这里使用[2]根据兄弟姐妹的位置选择元素,而不是匹配的节点。由于您的两个表都是其父元素的第一个子元素,因此[1]将匹配它们,而[2]则不匹配。如果您想在整个文档中使用第二个这样的元素 ,则需要将表达式放在括号中,以便[2]应用于节点集:

(//p[@class="foo"])[2]
(//table[@class="info"])[2]