一尘不染

如何在不知道字符串中包含哪些标签的情况下从字符串中删除所有HTML标签?

c#

有什么简单的方法可以删除字符串中的所有HTML标记或任何与HTML相关的内容?

例如:

string title = "<b> Hulk Hogan's Celebrity Championship Wrestling &nbsp;&nbsp;&nbsp;<font color=\"#228b22\">[Proj # 206010]</font></b>&nbsp;&nbsp;&nbsp; (Reality Series, &nbsp;)"

以上应该是:

“绿巨人霍根的名人冠军摔跤[项目编号206010](现实系列)”


阅读 177

收藏
2020-05-19

共1个答案

一尘不染

您可以使用一个简单的正则表达式,如下所示:

public static string StripHTML(string input)
{
   return Regex.Replace(input, "<.*?>", String.Empty);
}

请注意,此解决方案有其自身的缺陷。
有关更多信息,请参见删除字符串中的HTML标签(尤其是@mehaase的注释)。

另一个解决方案是使用HTML Agility Pack
您可以在下面的库中找到示例:HTML敏捷包-
删除不需要的标签而不删除内容?

2020-05-19