正則驗證,match()與test()函式的區別?
阿新 • • 發佈:2018-12-26
test是RegExp的方法,引數是字串,返回值是boolean型別。
match是String的方法,引數是正則表示式,返回值是陣列。
案例:
1 //判斷日期型別是否為YYYY-MM-DD格式的型別 2 function IsDate(){ 3 var str = document.getElementById('str').value.trim(); 4 if(str.length!=0){ 5 var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/; 6 var r = str.match(reg); 7 if(r==null) 8 alert('對不起,您輸入的日期格式不正確!'); //請將“日期”改成你需要驗證的屬性名稱! 9 } 10 }
//判斷輸入的字元是否為中文 2 function IsChinese() 3 { 4 var str = document.getElementById('str').value.trim(); 5 if(str.length!=0){ 6 reg=/^[\u0391-\uFFE5]+$/; 7 if(!reg.test(str)){ 8 alert("對不起,您輸入的字串型別格式不正確!");//請將“字串型別”要換成你要驗證的那個屬性名稱! 9 } 10 } 11 }