嵌套标记选择节点c#wpf
我无法从嵌套标记选择节点c#wpf,c#,wpf,tags,nested,selectnodes,C#,Wpf,Tags,Nested,Selectnodes,我无法从获取所有文本,示例: // sample html code: <div class="article-content"> //<p>text I want text I want text I want text I want <strong> TEXT I WANT TOO </strong></p><p>text I want text I want text I want text I want <s
获取所有文本,示例:
我希望文本块中的所有文本的顺序与站点上的相同,但我真的不知道如何操作。尝试将您的XPath更改为
编辑:htmlDocument是HtmlAlityPack.htmlDocument类的实例吗?是的。我试过你的答案,但结果是一样的,它对我有效。如何将内容加载到htmlDocument?工作正常!我的天,我忘了在设备上加载应用程序-真的,我这么做了非常感谢你!这太容易了。
// sample html code: <div class="article-content">
//<p>text I want text I want text I want text I want <strong> TEXT I WANT TOO </strong></p><p>text I want text I want text I want text I want <strong> TEXT I WANT TOO </strong></p><div>
foreach (HtmlNode link in htmlDocument.DocumentNode.SelectNodes("//div[@class='article-content']/p/text()"))
{
if((link.InnerText.Count() == 1) || (link.InnerText.Count() < 250 && link.InnerText[0] == ','))
test.Text = test.Text + link.InnerText.Trim();
else
test.Text = test.Text + "\n" + link.InnerText.Trim();
}
//示例html代码:
// 文本我想要文本我想要文本我想要文本我想要文本我也想要文本我想要文本我想要文本我想要文本我也想要
foreach(htmlDocument.DocumentNode.SelectNodes(“//div[@class='article-content']]/p/text()”)中的HtmlNode链接)
{
如果((link.InnerText.Count()==1)| |(link.InnerText.Count()<250&&link.InnerText[0]==','))
test.Text=test.Text+link.InnerText.Trim();
其他的
test.Text=test.Text+“\n”+link.InnerText.Trim();
}
我希望文本块中的所有文本的顺序与站点上的相同,但我真的不知道如何操作。尝试将您的XPath更改为
“//div[@class='article-content']/p”
编辑:htmlDocument是HtmlAlityPack.htmlDocument类的实例吗?是的。我试过你的答案,但结果是一样的,它对我有效。如何将内容加载到htmlDocument?工作正常!我的天,我忘了在设备上加载应用程序-真的,我这么做了非常感谢你!这太容易了。