如何用正则表达式去掉html标签

如题所述

1、正则表达式去掉html标签代码如下:
/// <Header> /// 去除 HTML tag
/// </Header>
/// <param name="HTML">源</param>
/// <returns>结果</returns> public static string StripHTML(string HTML) //google "StripHTML" 得到{ string[] Regexs =
{
@"<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[] Replaces =
{
"",
"",
"",
"\"",
"&",
"<",
">",
" ",
"\xa1", //chr(161), "\xa2", //chr(162), "\xa3", //chr(163), "\xa9", //chr(169), "",
"\r\n",
""
};

string s = HTML;
for (int i = 0; i < Regexs.Length; i++)
{
s = new Regex(Regexs[i], RegexOptions.Multiline | RegexOptions.IgnoreCase).Replace(s, Replaces[i]);
}
s.Replace("<", "");
s.Replace(">", "");
s.Replace("\r\n", "");
return s;
}
}
2、可以直接复制到txt,然后保存成为.html,在浏览器中设置即可!
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-03-29

这是js清楚html标签的表达式,不用语言可能会有些不同,但是区别不大。

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <style type="text/css">
        #div1.active{background: yellow;}
        #div1 div{width: 100px;height: 200px;display: none;}
        </style>
        <script type="text/javascript">
        window.onload=function()
        {
            var oDiv="<div id='div1'>"
                        +"<input type='button' value='1'/>"
                        +"<input type='button' value='2'/>"
                        +"<input type='button' value='3'/>"
                        +"<input type='button' value='4'/>"
                        +"<div>11</div>"
                        +"<div>22</div>"
                        +"<div>33</div>"
                        +"<div>44</div>"
                    +"</div>";
            console.log(oDiv+"\n");
            console.log(oDiv.replace(/<\/{0,}[a-z](.+?)>/gi,""));
        }
        </script>
    </head>
    <body>
        <div id='div1'>
            <input type="button" value="1"/>
            <input type="button" value="2"/>
            <input type="button" value="3"/>
            <input type="button" value="4"/>
            <div>11</div>
            <div>22</div>
            <div>33</div>
            <div>44</div>
        </div>
    </body>
</html>


什么是正则表达式?

正则表达式,又称正规表示法、常规表示法(英语:Regular Expression,在代码中常简写为regex、regexp或RE),的一个概念。正则表达式使用单个来描述、匹配一系列符合某个句法规则的字符串。在很多里,正则表达式通常被用来检索、替换那些符合某个模式的文本。

许多都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的。正则表达式通常缩写成“regex”,单数有regexp、regex,复数有regexps、regexes、regexen。

本回答被网友采纳
第2个回答  2016-01-15
  protected void Page_Load(object sender, EventArgs e)
  {
  //string regexstr = @"<[^>]*>"; //去除所有的标签
  //@"<script[^>]*?>.*?</script >" //去除所有脚本,中间部分也删除
  // string regexstr = @"<img[^>]*>"; //去除图片的正则
  // string regexstr = @"<(?!br).*?>"; //去除所有标签,只剩br
  // string regexstr = @"<table[^>]*?>.*?</table>"; //去除table里面的所有内容
  string regexstr = @"<(?!img|br|p|/p).*?>"; //去除所有标签,只剩img,br,p
  str = Regex.Replace(str, regexstr, string.Empty, RegexOptions.IgnoreCase);
  }
第3个回答  2016-01-15
使用 “<[^<]*>” 然后创建一个RegEXP对象 过滤

这是表达式内容,至于表达式的规范我就不说了本回答被网友采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网