如何获得一个p标签的所有文本,除了最后与htmlagilitypack
本文关键字:文本 htmlagilitypack 最后 何获得 标签 一个 | 更新日期: 2023-09-27 18:12:22
我有一个像这样的HTML是一个p标签(编号10)在div类"fine"
<p>
first para.
<br/>
second para.
<br/>
<br/>
nine para .
...
<br/>
last para.
</p>
我想得到所有文本,除了最后一段:第一次对位。第二对位。九段。…
HtmlNode item = document.DocumentNode.SelectSingleNode("//div[@class='fine']/p[10]//text()");
这段代码只是得到:第一次对位。
顾名思义,SelectSingleNode()
只返回单个节点。如果XPath参数匹配多个节点,则只返回第一个节点。
您应该使用SelectNodes()
代替,并添加谓词[position() < last()]
以排除最后一个文本节点:
string query = "//div[@class='fine']/p[10]//text()[position() < last()]";
HtmlNode items = document.DocumentNode.SelectSingleNode(query);