【发布时间】:2017-01-23 01:54:51
【问题描述】:
基于以下 HTML,我想提取 TextA、TextC 和 TextE。
<div id='content'>
TextA
<br/>
<br/>
<p>TextB</p>
TextC
<br/>
TextC
<p>TextD</p>
TextE
</div>
我试图像这样得到 TextC,但没有得到我想要的结果:
- 查询:
//*[preceding::p[contains(.,"TextB")] and following::p[contains(.,"TextD")]] - 预期结果:
["TextC", <br/>, "TextC"] - 实际结果:
[<br/>]
有没有办法在不使用//div/text()[1] 之类的索引的情况下选择文本节点?
【问题讨论】:
-
你的问题很不清楚。在第一行中,您说“我想提取 TextA、TextC 和 TextE”,但稍后您又谈到想要选择
["TextC", <br/>, "TextC"]。请清楚地解释你想要做什么。 -
知道了。我确实想提取所有上述文本节点,我的查询只是我尝试这样做的一个示例。