如何在后台用ASP.NET去除不完整的HTML标签?

一般的留言都会用到在线编辑器,但是有时候编辑了留言后提交到后台的时候提交上来的在线编辑器中的HTML标签并不完整,比如有些人故意在后头加个<div>而没有加结尾,

这时候如果直接添加到数据库,当再取出显示的时候就会造成页面上的HTML代码错乱,搞得原本正常的布局都错位了,

请问我应该怎么消除不完整的HTML标签?

我知道应该是用正则表达式,但是具体是怎么清除的我就不会了,请大家给我个示例,多谢了!!!


largeQ
浏览 621回答 2
2回答

眼眸繁星

public static string HTMLEncode(string str)&nbsp;&nbsp;&nbsp; {&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; str = str.Replace(">", "&gt;");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; str = str.Replace("<", "&lt;");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char ch;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ch = (char)32;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; str = str.Replace(ch.ToString(), "&nbsp;");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ch = (char)34;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; str = str.Replace(ch.ToString(), "&quot;");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ch = (char)39;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; str = str.Replace(ch.ToString(), "&#39;");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ch = (char)13;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; str = str.Replace(ch.ToString(), "");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ch = (char)10;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; str = str.Replace(ch.ToString(), "<BR> ");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return str;&nbsp;&nbsp;&nbsp; }

慕的地6264312

1. 用 html tidy 把 你的留言 里带有的html标签清理成标准的xhtml。2. 转义特殊字符
打开App,查看更多内容
随时随地看视频慕课网APP