C# 从字符串中删除所有HTML?

C# 从字符串中删除所有HTML?,c#,.net,C#,.net,我见过可以移除标记的正则表达式,这很好,但我也有类似的东西 &nbsp; 等等 这实际上不是来自HTML文件。它实际上是由一根弦组成的。我正在从SharePoint web services中提取数据,这为我提供了HTML用户可能使用/生成的数据,如 <div>Hello! Please remember to clean the break room!!! &quot;bob&quote; <BR> </div> 你好!请记得打扫

我见过可以移除标记的正则表达式,这很好,但我也有类似的东西

&nbsp;
等等

这实际上不是来自HTML文件。它实际上是由一根弦组成的。我正在从SharePoint web services中提取数据,这为我提供了HTML用户可能使用/生成的数据,如

<div>Hello! Please remember to clean the break room!!! &quot;bob&quote; <BR> </div>
你好!请记得打扫休息室!!!“鲍勃"e;
因此,我正在解析100-900行,每行8-20列。

看看,这是一个HTML解析器,您可以使用它从文档中的HTML节点提取
内部文本

正如前面所述,您不能相信对正则表达式进行HTML解析。有时,它可能被认为是合适的(对于非常有限的任务);但一般来说,HTML太复杂,太容易出现不规则性

使用诸如HAP之类的解析器可以为您提供更大的灵活性。使用它执行此任务可能会出现的一个(粗略)示例:

HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.Load("path to your HTML document");

StringBuilder content = new StringBuilder();
foreach (var node in doc.DocumentNode.DescendantNodesAndSelf())
{
    if (!node.HasChildNodes)
    {
        sb.AppendLine(node.InnerText);
    }
}
如果您只对特定节点或一组节点感兴趣,还可以对文档执行查询:

var nodes = doc.DocumentNode.SelectNodes("your XPATH query here");

希望这能有所帮助。

强制性链接:您能否提供实际代码来演示如何使用HAP执行任务?