我有一个如下所示的 HTML 页面。我需要单独从“span”标签中取出“blah blah blah”。
<span class="news">
blah blah blah
<div>hello</div>
<div>bye</div>
</span>
这给了我所有的值(value):
div.SelectSingleNode(".//span[@class='news']").InnerText.Trim();
这给了我空值:
div.SelectSingleNode(".//span[@class='news']/preceding-sibling::text()").InnerText.Trim();
如何使用 HtmlAgilityPack 获取“div”标签前的文本?
最佳答案
您的第二次尝试非常接近。使用 /text()
而不是 /preceding-sibling::text()
,因为文本节点是 span 的 child [@class='news']
不是兄弟(既不在前也不在后):
div.SelectSingleNode(".//span[@class='news']/text()")
.InnerText
.Trim();
关于c# - 如何使用 HtmlAgilityPack 单独获取没有子标签的内部文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26438788/