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

如何用正则表达式去掉html标签,第1张

用正则表达式去掉html标签,下面是它的代码,直接复制就可以用的。

代码:

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 = HTMLfor (int i = 0i <

Regexs.Lengthi++) { s = new Regex(Regexs[i],

RegexOptions.Multiline | RegexOptions.IgnoreCase).Replace(s,

Replaces[i])} s.Replace("<", "")

s.Replace(">", "")s.Replace("\r\n", "")return s

} }

</?font[^><]*>这个只却掉font标签的,保留除font以外的所有标签,如<img><p>等等. 同样的你需要去掉其他标签,只需要将里面的font换你要去掉的,就可以了.

</?[^/?(img)|(p)][^><]*>这个保留(这里我写的保留了img,p这两个标签)你指定的标签,其他的(包括font)全去掉, 如果你还有其他的标签想保留,直接在里面加一个 |(xxx)就行了,

</?[a-zA-Z]+[^><]*>这个就是我最上面写的那个,会去掉所有的标签,包括font .

</?[a-zA-Z]+[^><]*>这个表达式可以去掉所有HTML的标签

JAVA代码可以这样写:

public static String delTagsFContent(String content){

String patternTag = "</?[a-zA-Z]+[^><]*>"

String patternBlank = "(^\\s*)|(\\s*$)"

return content.replaceAll(patternTag, "").replaceAll(patternBlank, "")

}

1,得到网页上的链接地址:

string

matchString =

@"<a[^>]+href=\s*(?:'(?<href>[^']+)'|""(?<href>[^""]+)""|(?<href>[^>\s]+))\s*[^>]*>"

2,得到网页的标题:

string matchString = @"<title>(?<title>.*)</title>"

3,去掉网页中的所有的html标记

string temp = Regex.Replace(html, "<[^>]*>", "")//html是一个要去除html标记的文档

4, string matchString = @"<title>([\S\s\t]*?)</title>"

5,js去掉所有html标记的函数:

function delHtmlTag(str)

{

return str.replace(/<[^>]+>/g,"")//去掉所有的html标记

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7194092.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-02
下一篇 2023-04-02

发表评论

登录后才能评论

评论列表(0条)

保存