给定以下 XML,我想构建一个 XPath 查询来获取包含 HTML 的 Body 节点的文本
<documents>
<document>
<items>
<item name='Form'>
Procedure
</item>
<item name='Body'>
<![CDATA[<p>arbitrary html</p>]]>
</item>
</items>
</document>
<document>
<items>
<item name='Form'>
Process
</item>
<item name='Body'>
Some arbitrary value
</item>
</items>
</document>
</documents>
我能够接近,我只是错过了一些东西。(这可能不是到达那里的最佳方式,但它是我能够接近的唯一方式)
//document/items/item[@name='Form'][text()='Procedure']/../item[@name='Body']
结果在 CDATA 包装的内容中,我不知道如何选择内部文本。
//document/items/item[@name='Form'][text()='Procedure']/../item[@name='Body']/text()
正在产生一个空字符串