当前位置:K88软件开发文章中心编程语言AspAsp01 → 文章内容

asp正则表达式过滤内容中的联系方式

减小字体 增大字体 作者:wangsdong     来源:asp编程网  发布时间:2018-12-30 8:33:11

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字符串中的所有数字,并换行。

 



asp正则表达式过滤内容中的联系方式