css样式正则:<style[\\s\\S]+?</style>
js脚本正则:<script[\\s\\S]+?</script>
标签正则:<[^\\>]*>
使用这三种正则表达式,基本能把页面的所有杂质过滤掉,只留下文本内容。
/// <summary>
/// 去掉html内容中全部标签
/// </summary>
/// <param name="content">html内容</param>
/// <returns>去掉html标签的内容</returns>
public static string DropHtmlTag(string content)
{
//去掉<*>
string Info = Drop(content, "<style[\\s\\S]+?</style>");
Info = Drop(Info, "<script[\\s\\S]+?</script>");
return Drop(Info, "<[^\\>]*>");
}
/// <summary>
/// 删除字符串中指定的内容
/// </summary>
/// <param name="src">要修改的字符串</param>
/// <param name="pattern">要删除的正则表达式模式</param>
/// <returns>已删除指定内容的字符串</returns>
public static string Drop(string src, string pattern)
{
Regex regex = new Regex(pattern, RegexOptions.None | RegexOptions.Compiled);
return regex.Replace(src, "");
}