XPATH Используйте оператор OR, чтобы объединить два разных запроса, чтобы результаты были в порядке их появления - PullRequest
0 голосов
/ 10 января 2020
<div class="bc 1000">Need this text</div>
<div class="bc 1000"><img src="https://www.test.com/png" class="and this text" alt="tick"></div>

Я пытаюсь написать запрос xpath, который захватывает эти два элемента текста по порядку. Поэтому я хочу:

Need this text
and this text

Отдельно я знаю, что запросы:

//div[@class='bc 1000']

//div[@class='bc 1000']/img/@class

Но я не могу объединить их, используя «ИЛИ». Я также не хочу использовать "|" поскольку это не расставило их по порядку, что важно - это всего лишь две строки кода, их гораздо больше.

1 Ответ

0 голосов
/ 10 января 2020

Технически XPath 1.0 возвращает набор узлов в произвольном порядке.

Это изменяется в XPath 2.0, где наиболее распространенные выражения (такие как выражения пути и выражения объединения, использующие "|") гарантированно возвращают последовательность в порядке документа.

Однако большинство реализаций XPath 1.0 уже следуют этому соглашению.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...