Logo
技术 C#

过滤掉html所有标签及样式、js脚本

photo
Pastore Antonio

2022年04月28日

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, "");
    }

本文为原创文章,请注意保留出处!
修复群晖Synology Drive client右键菜单缺失问题 Local, clean & environmental 作者:Pastore Antonio
1808 浏览量
1785 浏览量
configure: error: Package requirements (oniguruma) were not met Local, clean & environmental 作者:Pastore Antonio
1526 浏览量
Adobe Acrobat Pro 激活 Local, clean & environmental 作者:Pastore Antonio
1522 浏览量
追寻日出,找回自己 Local, clean & environmental 作者:Pastore Antonio
1489 浏览量