<!-- 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地址有效性驗證函數(shù)-->
<script language=javascript runat=server>
function isEmail(src) {
return (isEmail1.test(src) && isEmail2.test(src));
}
isEmail1 = /^\w+([\.\-]\w+)*\@\w+([\.\-]\w+)*\.\w+$/;
isEmail2 = /^.*@[^_]*$/;
</script>
<!-- IP地址有效性驗證函數(shù)-->
<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有效性驗證函數(shù)-->
<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>
應用也很簡單,以上函數(shù)均是應用在服務器端,若用在客戶端需要把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語法就是用正則表達式的替換做成的。
收藏自:
http://www.netop.cc/doc.asp?cg=37&did=23