asp正則表達式過濾內容中的手機,電話,郵箱,QQ等數字聯系方式,但不包括email。因為客戶在發布產品的時候,會故意將手機,電話等聯系方式 放到裡面,這樣我的查詢聯系方式的頁面就一點用處都沒有了,太討厭了。於是找到一個ASP正則函數解決了這個問題。
功能:ASP替換字符串中長度大於5的數字為***
參數:strng為要替換的內容
整理:www.ASPprogram.cn
原創文章,轉載請保留此信息,謝謝
Function repnum(strng) '以數組返回
i = 0
Set regEx = New RegExp
regEx.Pattern = "(\d+)" '"[0-9]"
regEx.IgnoreCase = True
regEx.Global = True
Set Matches = regEx.Execute(strng)
For Each Match in Matches
'RetStr = RetStr &"<br>"& Match.Value
If Len(Match.Value)>=5 Then
strng = Replace(strng, Right(Match.Value,4),"***")
End If
i = i + 1
Next
repnum = strng
End Function
使用的時候就直接<%=repnum(content)%>就行了,運行結果是content字符串中的一些數字被換成***,起到隱藏聯系方式的作用。如果覺得留下的數字多了,自己改一下這個函數裡面相應的數字。
再補充一個相關的函數
功能:ASP正則表達式提取字符串中所有的數字。
參數:strng為要提取的內容
Function RegExpTest(strng) '以數組返回
i = 0
Set regEx = New RegExp
regEx.Pattern = "(\d+)" '"[0-9]"
regEx.IgnoreCase = True
regEx.Global = True
Set Matches = regEx.Execute(strng)
For Each Match in Matches
RetStr = RetStr &"<br>"& Match.Value '輸出提取出來的數字
i = i + 1
Next
RegExpTest = RetStr
End Function
使用方法<%=RegExpTest(content)%>,運行結果是content字符串中的所有數字,並換行