zoukankan      html  css  js  c++  java
  • 过滤HTML 脚本 样式 避免样式冲突

     public static string ToSafeHtmlString(string content)
    {
    if (content == null)
    {
    return string.Empty;
    }
    if (string.IsNullOrWhiteSpace(content))
    {
    return content;
    }
    content = Regex.Replace(content, @"<script[^<>]*?>[\s\S]*?</script>", String.Empty, RegexOptions.IgnoreCase);
    content = Regex.Replace(content, @"<([\w]+?[^<>]*?) (class|style)=""[^""]*?""([^<>]*?)>", "<$1$3>", RegexOptions.IgnoreCase);
    content = Regex.Replace(content, @"<([\w]+?[^<>]*?) (class|style)='[^']*?'([^<>]*?)>", "<$1$3>", RegexOptions.IgnoreCase);
    content = Regex.Replace(content, @"<([\w]+?[^<>]*?) (class|style)=[^<>]*?( [^<>]*?|)>", "<$1$3>", RegexOptions.IgnoreCase);
    content = Regex.Replace(content, @"<frameset[^<>]*?>[\s\S]*?</frameset>", String.Empty, RegexOptions.IgnoreCase);
    content = Regex.Replace(content, @"<frameset[^<>]*?>", String.Empty, RegexOptions.IgnoreCase);
    content = Regex.Replace(content, @"<iframe[^<>]*?>[\s\S]*?</iframe>", String.Empty, RegexOptions.IgnoreCase);
    content = Regex.Replace(content, @"<iframe[^<>]*?>", String.Empty, RegexOptions.IgnoreCase);
    content = Regex.Replace(content, @"<script[^<>]*?>", String.Empty, RegexOptions.IgnoreCase);
    return content;
    }



  • 相关阅读:
    Windows解决端口占用
    Oracle数字格式化
    Windows生成项目目录结构
    IDEA激活教程
    Windows搭建SMB服务
    在右键新建菜单中添加新项目
    Fastjson1.2.47反序列化+环境搭建+漏洞复现
    nmap常用命令及端口
    Shiro反序列化复现
    CVE-2020-0796漏洞复现
  • 原文地址:https://www.cnblogs.com/rhythmK/p/2411024.html
Copyright © 2011-2022 走看看