利用正则表达式去掉html代码

正则

using System.Text.RegularExpressions;//需要引用

  // 利用正则表达式去掉"<"和">"之间的内容
  private string StripHT(string strHtml)
  {
   Regex regex=new Regex("<.+?>",RegexOptions.IgnoreCase);
   string strOutput=regex.Replace(strHtml,"");
   return strOutput;
  }

//方法二(不知为什么此方法占用CPU100%)

public static string DropHTML(string strHtml)
  {
   string [] aryReg ={
          @"<script[^>]*?>.*?</script>",
          @"<(\/\s*)?!?((\w+:)?\w+)(\w+(\s*=?\s*(([""''])(\\[""''tbnr]|[^\7])*?\7|\w+)|.{0})|\s)*?(\/\s*)?>",
          @"([\r])[\s]+",
          @"&(quot|#34);",
          @"&(amp|#38);",
          @"&(lt|#60);",
          @"&(gt|#62);",
          @"&(nbsp|#160);",
          @"&(iexcl|#161);",
          @"&(cent|#162);",
          @"&(pound|#163);",
          @"&(copy|#169);",
          @"(\d+);",
          @"-->",
          @"<!--.*"        
         };

   string [] aryRep = {
           "",
           "",
           "",
           "\"",
           "&",
           "<",
           ">",
           " ",
           "\xa1",//chr(161),
           "\xa2",//chr(162),
           "\xa3",//chr(163),
           "\xa9",//chr(169),
           "",
           "\r",
           ""   
          };

   string newReg =aryReg[0];
   string strOutput=strHtml;
   for(int i = 0;i<aryReg.Length;i++)
   {
    Regex regex = new Regex(aryReg[i],RegexOptions.IgnoreCase );
    strOutput = regex.Replace(strOutput,aryRep[i]);
   }

   strOutput.Replace("<","");
   strOutput.Replace(">","");
   strOutput.Replace("\r","");
   return strOutput;
     
  }

时间: 2024-11-02 00:58:23

利用正则表达式去掉html代码的相关文章

通过Java正则表达式去掉SQL代码中回车换行和多余空格_正则表达式

复制代码 代码如下: public static void main(String[] args) { String sql = "SELECT * FROM \n" + " `testdb`.`foo` LIMIT 0, 100"; String s = "SELECT * FROM `testdb`.`foo` LIMIT 0, 100"; String sql2 = Pattern.compile(" {2,}").ma

通过Java正则表达式去掉SQL代码中回车换行和多余空格

复制代码 代码如下: public static void main(String[] args) { String sql = "SELECT * FROM \n" + " `testdb`.`foo` LIMIT 0, 100"; String s = "SELECT * FROM `testdb`.`foo` LIMIT 0, 100"; String sql2 = Pattern.compile(" {2,}").ma

JavaScript利用正则表达式去除日期中的-_javascript技巧

1.说明 经常会出现这样的情况,页面的日期格式是:YYYY-MM-DD,而数据库中的日期格式是:YYYYMMDD,两者之间需要转换一下,方能传到Java后台查询数据. 通常,这种转化的方法有两种,第一种,将日期字符串先截取,然后拼接:第二种,就是利用正则表达式去掉"-" 相比较而言,第二种方法快捷,不容易出错. 2.实现源码 复制代码 代码如下: <%@ page language="java" import="java.util.*" p

JavaScript利用正则表达式去除日期中的“-”_javascript技巧

1.说明 经常会出现这样的情况,页面的日期格式是:YYYY-MM-DD,而数据库中的日期格式是:YYYYMMDD,两者之间需要转换一下,方能传到Java后台查询数据. 通常,这种转化的方法有两种,第一种,将日期字符串先截取,然后拼接:第二种,就是利用正则表达式去掉"-" 相比较而言,第二种方法快捷,不容易出错. 2.实现源码 <%@ page language="java" import="java.util.*" pageEncoding

ASP中利用“正则表达式” 对象实现UBB代码

ubb|对象|正则 上一次,我们谈到在ASP中如何利用"正则表达式"对象来实现各种数据的校验,文中描述了正则表达式对象的强大功能,接下来,我们来看看有关"正则表达式"对象的其他功能.当我们在网上冲浪的时候,尤其是浏览各类论坛的时候,经常会见到"UBB代码"这个词语.什么是UBB代码呢?UBB代码是HTML的一个变种http://www.alixixi.com/program/a/,是Ultimate Bulletin Board (国外一个BBS

c#代码-C#如何利用正则表达式读取网页指定内容

问题描述 C#如何利用正则表达式读取网页指定内容 C#如何利用正则表达式读取网页指定内容,求高手指点,直接上传源代码也行,非常感谢帮助

利用正则表达式判断一个给定的字符是否是回文_正则表达式

如果给定的字符串是回文,返回true,反之,返回false. 如果一个字符串忽略标点符号.大小写和空格,正着读和反着读一模一样,那么这个字符串就是palindrome(回文). 注意你需要去掉字符串多余的标点符号和空格,然后把字符串转化成小写来验证此字符串是否为回文. 函数参数的值可以为"racecar","RaceCar"和"race CAR". 关键代码: 去掉字符串中的标点符号和空白格.可以用str.replace()+正则表达式匹配. v

利用正则表达式判断一个给定的字符是否是回文

如果给定的字符串是回文,返回true,反之,返回false. 如果一个字符串忽略标点符号.大小写和空格,正着读和反着读一模一样,那么这个字符串就是palindrome(回文). 注意你需要去掉字符串多余的标点符号和空格,然后把字符串转化成小写来验证此字符串是否为回文. 函数参数的值可以为"racecar","RaceCar"和"race CAR". 关键代码: 去掉字符串中的标点符号和空白格.可以用str.replace()+正则表达式匹配. v

在ASP中利用“正则表达式” 对象实现UBB风格的论坛

ubb|对象|正则 上一次,我们谈到在ASP中如何利用"正则表达式"对象来实现各种数据的校验,文中描述了正则表达式对象的强大功能,接下来,我们来看看有关"正则表达式"对象的其他功能.当我们在网上冲浪的时候,尤其是浏览各类论坛的时候,经常会见到"UBB代码"这个词语.什么是UBB代码呢?UBB代码是HTML的一个变种http://www.alixixi.com/program/a/,是Ultimate Bulletin Board (国外一个BBS