///   <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. android -------- Eclipse下的NDK配置环境

    NDK 全称是Native Development Kit,是一个让开发人员在Android应用中嵌入使用本地代码编写的组件的工具集 原生开发工具包 (NDK) 是一组可让您在 Android 应用中 ...

  2. android--------Socket的简单了解

    Socket目录 Socket通信简介 Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信.两者的最大差异在于,http连接使用的是“请求—响应方式”,即在请求时建立连 ...

  3. ubuntu+anaconda

    1.下载anaconda 查看ubuntu是32位还是64位 命令: uname -m 如果显示i686,你安装了32位操作系统 如果显示 x86_64,你安装了64位操作系统 uname -a 查看 ...

  4. 03 flask数据库操作、flask-session、蓝图

    ORM ORM 全拼Object-Relation Mapping,中文意为 对象-关系映射.主要实现模型对象到关系数据库数据的映射. 1.优点 : 只需要面向对象编程, 不需要面向数据库编写代码. ...

  5. 『TensorFlow』SSD源码学习_其四:数据介绍及TFR文件生成

    Fork版本项目地址:SSD 一.数据格式介绍 数据文件夹命名为VOC2012,内部有5个子文件夹,如下, 我们的检测任务中使用JPEGImages文件夹和Annotations文件夹. JPEGIm ...

  6. 【Java】【1】List的几种排序写法

    前言: 1,实现Comparator接口的类的对象作为sort的入参 2,在方法的局部使用局部类 3,基于第二种方法,局部类改为匿名类 4,使用lamdba表达式->这种形式 5,借助Compa ...

  7. leetcode-algorithms-2 Add Two Numbers

    leetcode-algorithms-2 Add Two Numbers You are given two non-empty linked lists representing two non- ...

  8. ireport部署到Linux服务器上遇到的问题解决

    ireport报表在本地Windows环境运行正常,一旦部署到Linux环境上出现了如下问题: 1.打开报表,后台直接报net.sf.jasperreports.engine.util.JRFontN ...

  9. token原理详解

    概念与使用流程 是计算机术语:令牌,令牌是一种能够控制站点占有媒体的特殊帧,以区别数据帧及其他控制帧.token其实说的更通俗点可以叫暗号,在一些数据传输之前,要先进行暗号的核对,不同的暗号被授权不同 ...

  10. hdu 1257 LIS (略坑5

    ---恢复内容开始--- 最少拦截系统 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...