我有一个节点,它包含文本和其他节点,它们也有文本。我想在该节点内获取文本,无论它有什么子节点。
例如,我可以有这种情况:
<span class="title">text text text</span>
或者这种情况:
<span class="title">text text text <p>text text text</p> <div>text text</div> <span>
我需要的是 span
节点内的所有文字。
我试过了:
span[@class='title']//text()
但问题是代码不适用于这种情况:
<span class="title">text text <br><br>text text <br><br>text text </span>
答案 0 :(得分:1)
string value函数返回span
元素的string()
:
string(span[@class='title'])
代表
<span class="title">text text text <p>text text text</p> <div>text text</div> </span>
它返回
text text text text text text text text
按要求。但请注意
<span class="title">text text <br><br>text text <br><br>text text </span>
是格式不正确的XML ,因此没有XPath可行,但如果清理未关闭的br
元素,
<span class="title">text text <br/><br/>text text <br/><br/>text text </span>
你会得到
text text text text text text
正如所料。