相关疑难解决方法(0)

使用Html Agility Pack从html中获取所有文本

输入

<html><body><p>foo <a href='http://www.example.com'>bar</a> baz</p></body></html>
Run Code Online (Sandbox Code Playgroud)

产量

foo
bar
baz
Run Code Online (Sandbox Code Playgroud)

我知道htmldoc.DocumentNode.InnerText,但它会给foobarbaz- 我想得到每个文本,而不是一次.

c# html-agility-pack

28
推荐指数
5
解决办法
4万
查看次数

如何在不破坏 HTML 的情况下将 &lt;span&gt; 包裹在 HTML 中的匹配单词周围

使用 C# - WinForms

我有一个有效的 HTML 字符串,它可能包含也可能不包含各种 HTML 元素,例如<a>.

我需要搜索此 HTML 并突出显示某些关键字 - 突出显示是通过在<span>文本周围添加内联样式来完成的。我不应该对<a>标签或用户实际上不可见的任何其他 HTML 标签执行此操作。

例如目前我正在这样做:

html = html.Replace(phraseToCount, "<span style=\"background: #FF0000; color: #FFFFFF; font-weight: bold;\">" + phraseToCount + "</span>");
Run Code Online (Sandbox Code Playgroud)

这种方法可行,但会破坏<a>标签。因此,在下面的示例中,只有谷物一词的第一个实例应该以 ' 结尾<span>

<p>To view more types of cereal click <a href="http://www.cereal.com">here</a>.</p>
Run Code Online (Sandbox Code Playgroud)

我怎么能这样做呢?

编辑-更多信息。

这将在 Winforms 应用程序中运行,因为获取 HTML 的最佳方法是使用 WebBrowser 控件 - 我将抓取网页并突出显示各种单词。

html c#

2
推荐指数
1
解决办法
689
查看次数

标签 统计

c# ×2

html ×1

html-agility-pack ×1