<!-- name,phone,age,money checked--> <script language=javascript runat=server> isName = /^[A-Za-z\-]+$/; //这个是表明输入的名字只能是字母和连字符组成 isPhone = /^(\+\d+ )?(\(\d+\) )?[\d ]+$/; //这个是国际通用的电话号码判断 isAge = /^(1[0-2]\d|\d{1,2})$/; //这个是年龄的判断 isMoney = /^\d+\.\d{2}$/; //这个是判断输入的是否为货币值 </script> <!-- Email地址有效性验证函数--> <script language=javascript runat=server> function isEmail(src) { return (isEmail1.test(src) && isEmail2.test(src)); } isEmail1 = /^\w+([\.\-]\w+)*\@\w+([\.\-]\w+)*\.\w+$/; isEmail2 = /^.*@[^_]*$/; </script> <!-- IP地址有效性验证函数--> <script language=javascript runat=server> ip_ip = '(25[0-5]|2[0-4]\\d|1\\d\\d|\\d\\d|\\d)'; ip_ipdot = ip + '\\.'; isIPaddress = new RegExp('^'+ip_ipdot+ip_ipdot+ipdot+ip_ip+'$'); </script> <!-- password有效性验证函数--> <script language=javascript runat=server> function TestPwd(src) { var sxf,regex; sxf='^[\\w]{6,12}$'; regex=new RegExp(sxf); return regex.test(src); } </script> <!--ZipCode check function--> <script language=javascript runat=server> function TestZipCode(src) { var ZipCode,regex; ZipCode="^[\\d]{6}$" regex=new RegExp(ZipCode); return regex.test(src); } </script> <!--验证用户输入身份证号的合法性--> <script language=javascript runat=server> isIdCorrect1=/^\d{15}$/; isIdCorrect2=/^\d{18}$/; function isIdCorrect(src) { return(isIdCorrect1.test(src)&&isIdCorrect2.test(src)); } </script>
应用也很简单,以上函数均是应用在服务器端,若用在客户端需要把runat=server去掉。我举两个例子:
IF isIPaddress.test(str)=false THEN
Response.Write"IP 地址错误,请重新输入。"
Response.End
END IF
IF TestPwd(str)=false THEN
Response.Write"密码错误,请重新输入。"
Response.End
END IF
事实上你只要熟练掌握正则表达式的应用,对于判断字符串输入的正确性那简直是小菜一碟。正则表达式还能用于字符串替换,ubb语法就是用正则表达式的替换做成的。