今天在工作的過程中需要這樣一個功能:要過濾所有Html內容但保留換行符<br>。看到這個需求,第一個想法就是使用正則來實現。經過在網上搜索一下,終於找到了,現在放到這裡來分享。
01
<%
02
s="a<b>sp</b>編程網<br />測試<hr/>數據<BR>效果<a href='http://www.aspbc.com'>http://www.ASPbc.com</a><br />代碼"
03
04
response.write "替換前:"&s
05
set rx=new RegExp
06
rx.IgnoreCase=true
07
rx.Global=true
08
rx.Pattern="<br[^>]*>"'先替換換行為其他特殊的內容,最後再反替換回來
09
s=rx.Replace(s,"___br___")
10
rx.Pattern="<[^>]+>"'替換所有標簽
11
s=rx.Replace(s,"")
12
set rx=nothing
13
14
'反替換換行
15
s=replace(s,"___br___","<br/>")
16
response.write "<br><br>替換後:"&s
17
18
%>(鼠標移到代碼上去,在代碼的頂部會出現四個圖標,第一個是查看源代碼,第二個是復制代碼,第三個是打印代碼,第四個是幫助)
大家把這段ASP保存一下,運行就能看到效果了。實際的應用中,大家可以將它保存為一個函數,放到一個公用文件中來使用。