过滤字符串html标签方法

过滤字符串html标签方法,如果输入的过滤标签为“*”,那么给字符串加上p标签

 

 public static string noTagHtml(string str, string tagname)
        {
            string zz = @"(<" + tagname + ".*?>)|(</" + tagname + ">)";
            if (tagname == "script") zz = "(<" + tagname + ".*?>)*(</" + tagname + ">)";
            //过滤除P标签的所有标签,不清除P标签里css样式
            else if (tagname == "p")
            {
                //zz = @"</?\s*(?!p|br)+\b[^>]*>";
                zz = @"</?\s*(?!br)+\b[^>]*>";
                Regex r = new Regex(zz, RegexOptions.IgnoreCase | RegexOptions.Singleline);
                str = Regex.Replace(str, zz, "", RegexOptions.IgnoreCase);
                str = r.Replace(str, "");
            }

            else if (tagname == "*")
            {
                zz = @"(<([^>]*)>)";
                Regex r = new Regex(zz, RegexOptions.IgnoreCase | RegexOptions.Singleline);
                str = Regex.Replace(str, zz, "", RegexOptions.IgnoreCase);
                str = r.Replace(str, "");
                Regex regex1 = new Regex(@"\n", RegexOptions.IgnoreCase);
                str = regex1.Replace(str, "");
                Regex regex2 = new Regex(@"\n[\s| ]*\r", RegexOptions.IgnoreCase);
                str = regex2.Replace(str, "");
                string[] hangCounts = str.Split('\r');

                string strTempList = "";
                for (int k = 0; k < hangCounts.Length; k++)
                {
                    if (!strTempList.Equals(""))
                    {
                        strTempList = strTempList + "";
                    }
                    if (!hangCounts[k].Equals(""))
                    {
                        strTempList = strTempList + "<p>" + hangCounts[k] + "</p>\r\n";
                    }
                }
                strTempList = strTempList + "";
                str = strTempList;
            }
            else
            {
               
                Regex r = new Regex(zz, RegexOptions.IgnoreCase | RegexOptions.Singleline);
                str = Regex.Replace(str, zz, "", RegexOptions.IgnoreCase);
                str = r.Replace(str, "");

            }
            return (str);

        }

 

转载于:https://www.cnblogs.com/xuxiaoshuan/p/3591201.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值