今天在工作的过程中需要这样一个功能:要过滤所有html内容但保留换行符<br>。看到这个需求,第一个想法就是使用正则来实现。经过在网上搜索一下,终于找到了,现在放到这里来分享。
<% s="a<b>sp</b>编程网<br />测试<hr/>数据<BR>效果<a href='http://www.aspbc.com'>http://www.aspbc.com</a><br />代码" response.write "替换前:"&s set rx=new RegExp rx.IgnoreCase=true rx.Global=true rx.Pattern="<br[^>]*>"'先替换换行为其他特殊的内容,最后再反替换回来 s=rx.Replace(s,"___br___") rx.Pattern="<[^>]+>"'替换所有标签 s=rx.Replace(s,"") set rx=nothing '反替换换行 s=replace(s,"___br___","<br/>") response.write "<br><br>替换后:"&s %>(鼠标移到代码上去,在代码的顶部会出现四个图标,第一个是查看源代码,第二个是复制代码,第三个是打印代码,第四个是帮助)
大家把这段asp保存一下,运行就能看到效果了。实际的应用中,大家可以将它保存为一个函数,放到一个公用文件中来使用。