程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> 關於ASP編程 >> ASP教程:過濾HTML代碼並截取

ASP教程:過濾HTML代碼並截取

編輯:關於ASP編程

正常ASP中對錄入內容的過濾僅僅是對左尖括號(<)和右尖括號的(>)的HTML源碼的替換,以在頁面中顯示為左右尖括號,而不是將尖括號作為HTML標簽執行了。

當然這應該是屬於正常過濾手法,而還有一種過濾方法則是將一對尖括號及尖括號中的所有字符均替換不顯示,作為過濾HTML標簽的最終極手法,但該方法對於內容中必須描述有關尖括號內容則是過濾過頭了(比如本文起始所引用的相關尖括號符號均將看不見“<>”,文章中用來描述HTML標簽“<hr>”也將看不見)。

不過,總歸是有需要將所有尖括號中內容全部替換的時候。很顯然是需要進行正則的。搜索了一段代碼


Function nohtml(str)
dim re
Set re=new RegExp
re.IgnoreCase =true
re.Global=True
re.Pattern="(\<.[^\<]*\>)"
str=re.replace(str,"")
re.Pattern="(\<\/[^\<]*\>)"
str=re.replace(str,"")
nohtml=str
set re=nothing
End Function


或者


Function nohtml(str)
dim re
Set re=new RegExp
re.IgnoreCase =true
re.Global=True
re.Pattern="<(.[^>]*)>"
str=re.replace(str,"")
nohtml=str
set re=nothing
End Function


做過簡單的應用。


[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]



附帶“過濾HTML代碼並截取”的代碼



Function cutStr(str,strlen)
Dim re
Set re=new RegExp
re.IgnoreCase =True
re.Global=True
re.Pattern="<(.[^>]*)>"
str=re.Replace(str,"")
set re=Nothing
Dim l,t,c,i
l=Len(str)
t=0
For i=1 to l
c=Abs(Asc(Mid(str,i,1)))
If c>255 Then
t=t+2
Else
t=t+1
End If
If t>=strlen Then
cutStr=left(str,i)&"..."
Exit For
Else
cutStr=str
End If
Next
cutStr=Replace(cutStr,chr(10),"")
cutStr=Replace(cutStr,chr(13)," ")
cutStr=Replace(cutStr,"&nbsp;","")
End Function

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved