XPath для тега XML в зависимости от положения в тексте? - PullRequest
2 голосов
/ 14 января 2020

Я ищу выражения XPath, которые будут различать два сценария ios с одним и тем же тегом.

Сценарий 1: <include.text> находится в середине строки, для пример:

<par>We are certain that <include.text><Reference/></include.text> will be a big hit.</par>

Сценарий 2: <include.text> идет сразу после другого (произвольного) тега, например:

<par><include.text><Reference/></include.text> will be a big hit.</par>

Насколько мне известно, я могу использовать //include.text для первого сценария, но мне нужно другое выражение Xpath, которое позволит мне различить сценарий ios, где он идет непосредственно после открывающего тега (par в данном случае, но это может быть что угодно). Обычно открывающий тег (par) будет родительским, а не родным. Я посмотрел в ends-with() и др. c. но я пока не очень хорош в XPath.

1 Ответ

3 голосов
/ 14 января 2020

Для этого XML,

<r>
  <par>We are certain that <include.text><Reference/></include.text> will be a big hit.</par>
  <par><include.text><Reference/></include.text> will be a big hit.</par>
</r>

этот XPath,

//include.text[not(preceding-sibling::node())]

выберет только вторую include.text, поскольку у него нет предшествующих узловых узлов.

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