假设我有一些看起来像这样的HTML:
<section>
<header>
<h1>Foo</h1>
</header>
<section>
<a href="#">one</a>
</section>
<section>
<a href="#">two</a>
</section>
</section>
<section>
<header>
<h1>Bar</h1>
</header>
<section>
<a href="#">one</a>
</section>
<section>
<a href="#">two</a>
</section>
</section>
我想获得带有'two'文本的锚点,但必须属于带有'Bar'标题的section标签(即上面html中的最后一个锚点)。
使用Bar文本获取标题元素很容易:
//header/h1[text()='Bar']
使用文本“two”的两个锚点也很容易生成一个section元素:
//section/a[text()='two']
当然会返回两个锚点。
我只是不确定如何将两者结合起来,这样我才会发现锚点位于section元素中,该元素是包含'Bar'的header元素的兄弟。
答案 0 :(得分:3)
//section[header/h1 = 'Bar']/section/a[. = 'two']