xpath для узла в узле, который является родственным узлом другого узла - PullRequest
2 голосов
/ 01 сентября 2011

Допустим, у меня есть какой-то 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', но должен принадлежать тегу section, который имеет заголовок 'Bar'(т.е. последний якорь в приведенном выше html).

Легко получить элемент заголовка с текстом Bar:

//header/h1[text()='Bar']

Также легко получить оба якоря с текстом'two ', которые живут в элементе section:

//section/a[text()='two']

, который, конечно, возвращает два якоря.

Я просто не уверен, как объединить два, чтобы я получил только якорьнайдено в элементе section, который является родственным элементом заголовка, который содержит 'Bar'.

1 Ответ

3 голосов
/ 01 сентября 2011
//section[header/h1 = 'Bar']/section/a[. = 'two']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...