xpath html query:如果这些不是给定节点的子节点,则选择tnodes

时间:2013-06-15 14:34:03

标签: html xml xpath xml-parsing xpathquery

我是xpath的新手,今天开始关注它:)

我有一些html具有以下结构:

<body class="wrapper">
   <h3>someText_1</h3>
   <h4>someOtherText_1
      <a href="someLink_1"> link_1 </a>
   </h4>
   <p>description_1</p>
          ...     
   <h3>someText_n</h3>
   <h4>someOtherText_n
      <a href="someLink_n"> link_1 </a>
   </h4>
   <p>description_1</p>
</body>

是否可以使用xpath选择每个h3后的所有节点?或者更一般地说:给定节点是否可以选择以下n节点,如果它们不是给定节点的子节点?

我尝试过:

  1. //体[类=“包装] / H3 / *
  2. //体[类=“包装] / H3 /.

1 个答案:

答案 0 :(得分:0)

您要找的是following-sibling::*

hr之后的所有笔记:

//body[@class="wrapper"]/h3/following-sibling::*

仅限下一个

//body[@class="wrapper"]/h3/following-sibling::*[1]

接下来的三个:

//body[@class="wrapper"]/h3/following-sibling::*)[position() <= 3 ]'

有关详细信息,请查看xpah axes