asp中正则表达式应用
/*asp中的用法
set regex=new Regexp
regex.Multiline=True
regex.Global=True
regex.IgnoreCase=True
regex.Pattern="(\(\d{3}\)|\d{3}-)?\d{8}"
if regex.Test("83768888") then
Response.Write "匹配"
else
Response.Write "不匹配"
end if
*/
应用例子来帮助我们了解和使用 这个好的程序书写格式
1、密码验证
我们的密码验证的规则是:密码的第一个字母不能是数字,密码的长度在在 4 和 16 之间而且密码中只能包含 字符,数字和下划线
我们姑且不去考虑这样的限制是否有道理,我们的任务是学习正则表达式
Function ValidatePassword(strPassword)
Dim re
Set re = new RegExp
re.IgnoreCase = false
re.global = false
re.Pattern = "^[a-zA-Z]\w{3,15}$"
ValidatePassword = re.Test(strPassword)
End Function
讲解
^ 符号表示后面连接的规则是对于第一个字符的处理限制,他必须是由[a-zA-Z]决定的规则所符合的
[a-zA-Z]的规则是--“[”表示从开始 "]" 表示结束
{ 和 } 表示 不包含 ( 和 ) 表示包含
字符,数字和下划线 的表达规则是 \w
按照这个规则 我们继续来看一个 对 Email 地址所采取的 检验规则
2.Email 地址检验
<%
Function ValidateEmailAddr(strEmailAddr)
'http://www.asp888.net 豆腐技术站
Dim re
Set re = new RegExp
re.pattern = "^\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,3}$"
ValidateEmailAddr=re.Test(strEmailAddr)
end function
%>