c#去掉HTML所有标签

c#去掉HTML所有标签,第1张

这个方法放在公共类中,然后后台调用

public StringBuilder Datatech(string name, string sql)

{

StringBuilder str = new StringBuilder()

DataTable dt = sqlhelper.publicFun("select top 6 * from tb_information where " + sql)

if (dt != null)

{

for (int i = 0i <dt.Rows.Counti++)

{

DataRow dr = dt.Rows[i]

string content = dr["information_Content"].ToString().Trim()

str.Append("<li class='li_KongGe'>" +

"<ul><li>" +

"<img src='images/rili.png' alt=''" + dr["information_Title"] + "'>" +

"<h4>" + Convert.ToDateTime(dr["information_Time"]).ToLongDateString().ToString() + "</h4>" +

"</li>" +

"<li>" +

"<h5><a href='serviceD.html?information_Id=" + dr["information_Id"]+"'>" + dr["information_Title"] + "</a></h5>" +

"<p>" + sqlhelper.ReplaceHtmlTag(content, 40) + "..." + "</p>" +

"</li>" +

"</ul>" +

"</li>")

}

}

return str

}

之所以用string content = dr["information_Content"].ToString().Trim()的作用是去掉所有空格。

</?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, "")

}


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

原文地址: https://outofmemory.cn/zaji/6133015.html

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

发表评论

登录后才能评论

评论列表(0条)

保存