获取文本后跟某些文本

时间:2015-11-16 20:52:33

标签: html xml xpath

我需要获取文字,但只能在特定文字之前(' ---------------')。 例如。 HTML代码示例:

...
<p> This is correct text. Everything after it is wrong</p>
<p>---------------------</p>
<p><strong>This is wrong text</strong></p>
<p> This is wrong another text</p>
...

我试图用下一个XPath表达式来解决这个问题:

/p/text()[normalize-space()][not(ancestor::p[contains(.,'---')])]

但不幸的是,这并没有像预期的那样发挥作用。

对于正确的解决方案表示赞赏。

1 个答案:

答案 0 :(得分:2)

此XPath将选择紧随其后的兄弟p的{​​{1}}的文字:

---