///   <summary>  
  ///   去除HTML标记  
  ///   </summary>  
  ///   <param   name="NoHTML">包括HTML的源码   </param>  
  ///   <returns>已经去除后的文字</returns>  
  public   static   string   NoHTML(string   Htmlstring)  
  {  
  //删除脚本  
  Htmlstring   =   Regex.Replace(Htmlstring,@"<script[^>]*?>.*?</script>","",RegexOptions.IgnoreCase);  
  //删除HTML  
  Htmlstring   =   Regex.Replace(Htmlstring,@"<(.[^>]*)>","",RegexOptions.IgnoreCase);  
  Htmlstring   =   Regex.Replace(Htmlstring,@"([/r/n])[/s]+","",RegexOptions.IgnoreCase);  
  Htmlstring   =   Regex.Replace(Htmlstring,@"-->","",RegexOptions.IgnoreCase);  
  Htmlstring   =   Regex.Replace(Htmlstring,@"<!--.*","",RegexOptions.IgnoreCase);  
   
  Htmlstring   =   Regex.Replace(Htmlstring,@"&(quot|#34);","/"",RegexOptions.IgnoreCase);  
  Htmlstring   =   Regex.Replace(Htmlstring,@"&(amp|#38);","&",RegexOptions.IgnoreCase);  
  Htmlstring   =   Regex.Replace(Htmlstring,@"&(lt|#60);","<",RegexOptions.IgnoreCase);  
  Htmlstring   =   Regex.Replace(Htmlstring,@"&(gt|#62);",">",RegexOptions.IgnoreCase);  
  Htmlstring   =   Regex.Replace(Htmlstring,@"&(nbsp|#160);","   ",RegexOptions.IgnoreCase);  
  Htmlstring   =   Regex.Replace(Htmlstring,@"&(iexcl|#161);","/xa1",RegexOptions.IgnoreCase);  
  Htmlstring   =   Regex.Replace(Htmlstring,@"&(cent|#162);","/xa2",RegexOptions.IgnoreCase);  
  Htmlstring   =   Regex.Replace(Htmlstring,@"&(pound|#163);","/xa3",RegexOptions.IgnoreCase);  
  Htmlstring   =   Regex.Replace(Htmlstring,@"&(copy|#169);","/xa9",RegexOptions.IgnoreCase);  
  Htmlstring   =   Regex.Replace(Htmlstring,   @"&#(/d+);","",RegexOptions.IgnoreCase);  
   
  Htmlstring.Replace("<","");  
  Htmlstring.Replace(">","");  
  Htmlstring.Replace("/r/n","");  
  Htmlstring=HttpContext.Current.Server.HtmlEncode(Htmlstring).Trim();  
   
  return   Htmlstring;  
  }

/**////提取HTML代码中文字的C#函数    
  ///   <summary>  
  ///   去除HTML标记  
  ///   </summary>  
  ///   <param   name="strHtml">包括HTML的源码   </param>  
  ///   <returns>已经去除后的文字</returns>  
  using   System;  
  using   System.Text.RegularExpressions;  
  public   class   StripHTMLTest{  
      public   static   void   Main(){  
          string   s=StripHTML("<HTML><HEAD><TITLE>中国石龙信息平台</TITLE></HEAD><BODY>faddfs龙信息平台</BODY></HTML>");  
          Console.WriteLine(s);  
      }  
   
      public   static   string   StripHTML(string   strHtml){  
          string   []   aryReg   ={  
                      @"<script[^>]*?>.*?</script>",  
   
                      @"<(///s*)?!?((/w+:)?/w+)(/w+(/s*=?/s*(([""'])(//[""'tbnr]|[^/7])*?/7|/w+)|.{0})|/s)*?(///s*)?>",  
                      @"([/r/n])[/s]+",  
                      @"&(quot|#34);",  
                      @"&(amp|#38);",  
                      @"&(lt|#60);",  
                      @"&(gt|#62);",    
                      @"&(nbsp|#160);",    
                      @"&(iexcl|#161);",  
                      @"&(cent|#162);",  
                      @"&(pound|#163);",  
                      @"&(copy|#169);",  
                      @"&#(/d+);",  
                      @"-->",  
                      @"<!--.*/n"  
                    };  
   
          string   []   aryRep   =   {  
                        "",  
                        "",  
                        "",  
                        "/"",  
                        "&",  
                        "<",  
                        ">",  
                        "   ",  
                        "/xa1",//chr(161),  
                        "/xa2",//chr(162),  
                        "/xa3",//chr(163),  
                        "/xa9",//chr(169),  
                        "",  
                        "/r/n",  
                        ""  
                      };  
   
          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/n","");  
          return   strOutput;  
      }  
  }

写一个静态方法  
  移除HTML标签#region   移除HTML标签  
  /**////   <summary>  
  ///   移除HTML标签  
  ///   </summary>  
  ///   <param   name="HTMLStr">HTMLStr</param>  
  public   static   string     ParseTags(string   HTMLStr)  
  {  
  return   System.Text.RegularExpressions.Regex.Replace(HTMLStr,   "<[^>]*>",   "");    
  }  
   
  #endregion  
   
                  取出文本中的图片地址#region   取出文本中的图片地址  
                  /**////   <summary>  
                  ///   取出文本中的图片地址  
                  ///   </summary>  
                  ///   <param   name="HTMLStr">HTMLStr</param>  
                  public   static   string   GetImgUrl(string   HTMLStr)  
                  {  
                          string   str   =   string.Empty;  
                          string   sPattern   =   @"^<img/s+[^>]*>";  
                          Regex   r   =   new   Regex(@"<img/s+[^>]*/s*src/s*=/s*([']?)(?<url>/S+)'?[^>]*>",  
                                  RegexOptions.Compiled);  
                          Match   m   =   r.Match(HTMLStr.ToLower());  
                          if   (m.Success)  
                                  str   =   m.Result("${url}");  
                          return   str;  
                  }  
   
                  #endregion

去掉HTML标记 .的更多相关文章

  1. C#去掉HTML标记

    该方法亲测可行,下面直接粘贴代码. public string RemoveHTMLTags(string htmlStream) { if (htmlStream == null) { throw ...

  2. .NET去掉HTML标记

    using System.Text.RegularExpressions; /// <summary> /// 去除HTML标记 /// </summary> /// < ...

  3. 使用C#将HTML文本转换为普通文本,去掉所有的Html标记(转)

    using System; using System.Collections.Generic; using System.Linq; using System.Text; //首先需要导入命名空间 u ...

  4. PHP压缩html网页代码原理(清除空格,换行符,制表符,注释标记)

    本博启用了一个叫wp super cache的页面压缩工具, 源代码没有去查看,不过原理很简单. 我们可以自己动手书写一个压缩脚本. 清除换行符,清除制表符,去掉注释标记 .它所起到的作用不可小视. ...

  5. 如何去掉HTML代码来获取纯文本?

    public string TextNoHTML(string Htmlstring) { //删除脚本 Htmlstring = Regex.Replace(Htmlstring, @"& ...

  6. 用VIM设置UTF-8编码的BOM标记

    1.去掉BOM标记: :set nobomb 2.加上BOM标记: :set bomb 3.查询当前UTF-8编码的文件是否有BOM标记: :set bomb? 4.更高级一点的: :%!xxd &q ...

  7. Aspose.Words简单生成word文档

    Aspose.Words简单生成word文档 Aspose.Words.Document doc = new Aspose.Words.Document(); Aspose.Words.Documen ...

  8. Git 分支管理和冲突解决

    Git 分支管理和冲突解决 创建分支 git branch 没有参数,显示本地版本库中所有的本地分支名称. 当前检出分支的前面会有星号. git branch newname 在当前检出分支上新建分支 ...

  9. C#夯实基础之接口(《CLR via C#》读书笔记)

    一. 接口的类型 接口是引用类型.因此从值类型赋值给接口是需要装箱的.如下所示: class Program { static void Main(string[] args) { ISay catS ...

随机推荐

  1. 关于JAVA项目中的常用的异常处理情况总结

    1. JAVA异常处理 在面向过程式的编程语言中,我们可以通过返回值来确定方法是否正常执行.比如在一个c语言编写的程序中,如果方法正确的执行则返回1.错误则返回0.在vb或delphi开发的应用程序中 ...

  2. Prime Ring Problem HDU - 1016

    A ring is compose of n circles as shown in diagram. Put natural number 1, 2, ..., n into each circle ...

  3. adb 获取包名

    1.aapt dump badging   指定的路径 +包名      ======= adb logcat|findstr START 2.顶部和尾部有包名和activity

  4. 根据list集合某个字段进行排序

    import java.util.ArrayList; import java.util.List; class Student { private String name; private doub ...

  5. 关于click的多次触发问题(冒泡事件)

    1. 问题描述: 在点击事件触发时调用接口,若用户多次点击会造成多次调用接口,有时会引起一些数据错误的问题,如支付页面,点击多次时会在后台生成多个相同订单 解决方法: (1)加flag,让点击事件只执 ...

  6. sqlite3 查询表

    cx = sqlite3.connect("c:/数据库地址") # 打开数据库cu = cx.cursor()# query the tablerows = cu.execute ...

  7. Lucene.Net 学习(搜索部分)(低要求,写给自己看)

    1. 搜索 排序:lucene 提供了Sort类对结果进行排序 提供了Filter类对查询条件进行限制 你或许会不自觉地拿它跟SQL语句进行比较:“lucene能执行and.or.order by.w ...

  8. 关于ORA-06508 , ORA-04068异常的详细说明

    参考:程序包调用报ORA-06508: PL/SQL: 无法找到正在调用的程序单元 出现这种情况的原因是因为,对于全局变量,每一个session会生成一个本地copy,如果程序重新编译的话,就会因程序 ...

  9. QString 的用法

    C++语言提供了两种字符串的实现:C风格的字符串,以'\0‘结尾;std::string,即标准模版库中的类.Qt则提供了自己的字符串实现:QString,QString不用担心内存分配以及关于'\0 ...

  10. 【转】vue.js表单校验详解

    官方文档:https://monterail.github.io/vuelidate/ https://github.com/monterail/vuelidate 1.npm安装vue-valida ...