c#使用正则表达式替换html标签

  /// <summary>
        /// 去除HTML标记(用正则彻底去除HTML\CSS\script代码 )
        /// </summary>
        /// <param name="Htmlstring">包括HTML的源码 </param>
        /// <returns>已经去除后的文字</returns>
        public static string NoHTML(this 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;
        }

时间: 2024-10-06 16:35:02

c#使用正则表达式替换html标签的相关文章

用正则表达式替换指定标签中的内容

用正则表达式替换指定标签中的内容,也是在工作中遇到的就顺手记了下来 string sXML = "ABCDEFCSF<p>123123</p>KOPL";//现在我要去掉P标签中的内容,实现 ABCDEFCSFKOPL这样的效果. 引入:using System.Text.RegularExpressions; Regex rg = new Regex("<pict>.*</pict>"); sXML = rg.Rep

正则表达式 替换 &lt;img &gt; 标签

/** * 正则表达式过滤<img > 标签 * @param str * @return */ public static String cutOutImgPrefix(String str){ String regex = "<img[^>]*>"; return str.replaceAll(regex, ""); }

js正则表达式替换HTML标签以及空格(&amp;nbsp;)

参考:范仁义 js代码: function filter(text) { var reg = /<[^<>]+>/g;//1.全局匹配g肯定忘记写,2.<>标签中不能包含标签实现过滤HTML标签 text = text.replace(reg, '');//替换HTML标签 text = text.replace(/ /ig, '');//替换HTML空格 return text; }; 在angularJS中使用过滤器过滤富文本数据 app.filter('qxhtm

JavaScript替换HTML标签

1.说明 获取HTML字符串(包含标签),通过正则表达式替换HTML标签,输出替换后的字符串 2.实现JavaScript代码 function deleteTag() { var regx = /<[^>]*>|<\/[^>]*>/gm; var tagStr = $("#ul_li").html(); alert("替换之前的字符串:" + tagStr); var result = tagStr.replace(regx,&

java正则表达式过滤html标签(转)

import java.util.regex.Matcher; import java.util.regex.Pattern; /** * <p> * Title: HTML相关的正则表达式工具类 * </p> * <p> * Description: 包括过滤HTML标记,转换HTML标记,替换特定HTML标记 * </p> * <p> * Copyright: Copyright (c) 2006 * </p> * * @auth

正则表达式替换和不包含指定字符串

需求 展示一段文字,段落中有些特殊标记的人名.刊名等,格式大体是:“(作者<刊名>其他)”,某个字段可以为空,比如作者为空. 那么对应的正则大体是这样的   '\((.*?)<(.*?)>.*?\)' 最终的效果是 “(<a>作者</a><<a>刊名</a>>其他)” 第一版 1 class Program 2 { 3 static string str = @"<p>[例]当夫广州之首难,武汉兴师,

js 替换 script 标签内容,包括 换行符

这几天在做项目的时候需要用到js替换 script 标签内的内容 用自己写的字符串去匹配都能成功,但是一旦将大串的DOM内容去匹配的时候 却一直提示失败. 上网查了很多资料,一直匹配不了,调试了很久 郁闷的时候,灵光一闪,难不成是换行的问题,一测试,果然如此 var str = 'lkjkjk' +'<SCRIPT type=text/html> abc </SCRIPT>' var reg = /<script.*>.*<\/script>/gi aler

notepad++正则表达式替换字符串详解

表达式 说明\t 制表符.\n 新行.. 匹配任意字符.| 匹配表达式左边和右边的字符. 例如, "ab|bc" 匹配 "ab" 或者 "bc".[] 匹配列表之中的任何单个字符. 例如, "[ab]" 匹配 "a" 或者 "b". "[0-9]" 匹配任意数字.[^] 匹配列表之外的任何单个字符. 例如, "[^ab]" 匹配 "a&q

java replaceall 使用正则表达式替换单等号,不替换其他相关的等号。

写项目需要将公式配置到数据库中,取出后根据公式规则进行比较,由于公式的等于是用单等号,在java中无法直接使用,故需要将单等号替换成双等号,单又不能影响大于等于以及其他形式.故果断选择正则表达式替换.以此留痕,备用. @org.junit.Test public void test4() { String expression="a = 0"; String aa=""; aa=expression.replaceAll("([^=><])=(