zoukankan      html  css  js  c++  java
  • ASP.NET html过滤器

    摘自:http://www.cnblogs.com/kezhiping/archive/2013/04/28/3048915.html

    在asp.net中,处理数据的时候,经常会用到html过滤器这个东西,

    比如在一篇新闻中,你要回去简略的前100个字,怎么办?

    你就得过滤掉这些html标签

    public class HtmlDel
        {
            public static string checkStr(string html)
            {

                System.Text.RegularExpressions.Regex regex1 = new System.Text.RegularExpressions.Regex(@"<script[\s\S]+</script *>", System.Text.RegularExpressions.RegexOptions.IgnoreCase);
                System.Text.RegularExpressions.Regex regex2 = new System.Text.RegularExpressions.Regex(@" href *= *[\s\S]*script *:", System.Text.RegularExpressions.RegexOptions.IgnoreCase);
                System.Text.RegularExpressions.Regex regex3 = new System.Text.RegularExpressions.Regex(@" no[\s\S]*=", System.Text.RegularExpressions.RegexOptions.IgnoreCase);
                System.Text.RegularExpressions.Regex regex4 = new System.Text.RegularExpressions.Regex(@"<iframe[\s\S]+</iframe *>", System.Text.RegularExpressions.RegexOptions.IgnoreCase);
                System.Text.RegularExpressions.Regex regex5 = new System.Text.RegularExpressions.Regex(@"<frameset[\s\S]+</frameset *>", System.Text.RegularExpressions.RegexOptions.IgnoreCase);
                System.Text.RegularExpressions.Regex regex6 = new System.Text.RegularExpressions.Regex(@"\<img[^\>]+\>", System.Text.RegularExpressions.RegexOptions.IgnoreCase);
                System.Text.RegularExpressions.Regex regex7 = new System.Text.RegularExpressions.Regex(@"</p>", System.Text.RegularExpressions.RegexOptions.IgnoreCase);
                System.Text.RegularExpressions.Regex regex8 = new System.Text.RegularExpressions.Regex(@"<p>", System.Text.RegularExpressions.RegexOptions.IgnoreCase);
                System.Text.RegularExpressions.Regex regex9 = new System.Text.RegularExpressions.Regex(@"<[^>]*>", System.Text.RegularExpressions.RegexOptions.IgnoreCase);
                html = regex1.Replace(html, ""); //过滤<script></script>标记
                html = regex2.Replace(html, ""); //过滤href=javascript: (<A>) 属性 网管网bitsCN.com
                html = regex3.Replace(html, " _disibledevent="); //过滤其它控件的on...事件
                html = regex4.Replace(html, ""); //过滤iframe
                html = regex5.Replace(html, ""); //过滤frameset
                html = regex6.Replace(html, ""); //过滤frameset
                html = regex7.Replace(html, ""); //过滤frameset
                html = regex8.Replace(html, ""); //过滤frameset
                html = regex9.Replace(html, "");
                html = html.Replace(" ", "");
                html = html.Replace("</strong>", "");
                html = html.Replace("<strong>", "");
                html = html.Replace("&nbsp;", "");
                html = html.Replace("&quot;", "");
                html = html.Replace(":", "");
                html = html.Replace("{", "");
                html = html.Replace("}", "");
                html = html.Replace("!", "");
                html = html.Replace(",", "");
                html = html.Replace("\"", "");
                html = html.Replace("\"", "");
                html = html.Replace("《", "");
                html = html.Replace("》", "");
                return html;
            }
        }

    如果你还想过滤掉什么特殊符号的,直接在后面加就行了!

  • 相关阅读:
    数据结构与算法10 微服务接口的鉴权和限流 [MD]
    .Net开发环境配置[OS/IIS/VS...]
    一、单件模式
    正则表达式调试器1.1
    C#2.0新特性系列文章转载
    巧用VS2005解决VS2005网站发布不便问题
    配置VS2005,加速VS2005运行速度
    转载:ASP.NET运行机制 和 图片盗链问题
    ASP.NET页面提前处理问题
    关于NTLM认证的python和.NET实现
  • 原文地址:https://www.cnblogs.com/love828/p/3049135.html
Copyright © 2011-2022 走看看