經常需要驗證郵箱地址,手機號碼,電話號碼等。在這兒把ASP中的正則驗證實現記錄一下
Function validate(ByVal str,ByVal number)
Dim temp,reg
Set reg = new regexp
reg.ignorecase=true
reg.global=true
Select Case CStr(number)
' 英文+空格
Case "0" temp = "^[a-zA-Z ]+$"
' 數字+橫杠
Case "1" temp = "^[0-9\-]+$"
' 半形數字
Case "2" temp = "^\d+$"
' 郵箱地址
Case "3" temp = "^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"
' 手機號碼格式
Case "4" temp = "^(((13[0-9]{1})|159|153)+\d{8})$"
' 電話號碼格式1
Case "5" temp = "^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$"
' 電話號碼格式2
Case "6" temp = "^(([0\+]\d{2,3}-)?(0\d{2,3}))?(\d{7,8})(-(\d{3,}))?$"
Case Else temp = number
End Select
reg.pattern = temp
validate = reg.test(Trim(str))
Set reg = Nothing
End Function
條用方法:
if validate(tel,4) or validate(tel,5) or validate(tel,6) then
else
response.Write("<script language='javascript'>alert('請檢查您的聯絡電話或者手機號碼格式!'); history.back()</script>")
response.End()
end if