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找不到"\192.168.1.3)
    隐式转换题目;
    video设置autoplay 不起作用
    面试时遇到的题目。正则,replace()
    优化以及bug
    简单的异步函数async/await例子
    i==1 && resolve()
    命名
    通过ES6 Module看import和require区别
    从 0 到 1 合理高效使用 GitHub 的资料
  • 原文地址:https://www.cnblogs.com/rhythmK/p/2411024.html
Copyright © 2011-2022 走看看