XPath без тега родного брата - PullRequest
1 голос
/ 06 октября 2010

Например, какой XPath будет возвращать «текст один», «текст два» и «текст три»?

<root>
<item>
   <richtext>
      <par>
         <break />
         text one
         <break />
         text two
         <break />
         text three
      </par>
   </richtext>
</item>
</root>

Количество тегов <break/> варьируется.

1 Ответ

2 голосов
/ 06 октября 2010

что XPath будет возвращать «текст один», «текст два» и «текст три»?

Использовать :

string(/*/*/*/par)

Это вычисляет строковое значение элемента par, который является (по определению) объединением всех его потомков текстовых узлов.

В случае, если вы хотите выбрать все текстовые узлычто потомки par (исключая текстовые узлы только для пробелов), используют :

/*/*/*/par/text()[normalize-space()]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...