结束标记后的XPath数据



我有这样的HTML:<span id="bla">text</span>more text

我想要textmore text

我有一个XPath://span[@id="bla"]/text()

我不知道如何获得结束标记以及它之后的内容。

more text被称为元素的"尾部",可以通过following-sibling:检索

//span[@id="bla"]/following-sibling::text()

<span id="bla">text</span>more text本身的格式不好,无法通过XPath进行处理。

让我们把它放在上下文中:

<div><span id="bla">text</span>more text</div>

然后,您可以简单地获取父元素的字符串值div:

string(/div)

获取

textmore text

根据要求。


如果有其他你不想要的内容:

<div>DO NOT WANT<span id="bla">text</span>more text<b/>DO NOT WANT</div>

您可以跟随@alexe的following-sibling::轴,并使用concat()组合您想要的部件:

concat(//span[@id="bla"], //span[@id="bla"]/following-sibling::text()[1])

再次获得

textmore text

根据要求。

最新更新