正則表達(dá)式的大致匹配過(guò)程是:依次拿出表達(dá)式和文本中的字符比較,如果每一個(gè)字符都能匹配,則匹配成功;一旦有匹配不成功的字符則匹配失敗。
正則表達(dá)式通常用于在文本中查找匹配的字符串。Python里數(shù)量詞默認(rèn)是貪婪的(在少數(shù)語(yǔ)言里也可能是默認(rèn)非貪婪),總是嘗試匹配盡可能多的字符;非貪婪的則相反,總是嘗試匹配盡可能少的字符。例如:正則表達(dá)式"ab*"如果用于查找"abbbc",將找到"abbb"。而如果使用非貪婪的數(shù)量詞"ab*?",將找到"a"。
var pageIndex=document.getElementById("textfield").value;if(!/^[0-9]+$/.test(pageIndex)){ alert("請(qǐng)輸入正整數(shù)"); return false; } else{ alert("輸入的是正整數(shù)");}/判斷輸入內(nèi)容是否為空 function IsNull(){ var str = document.getElementById('str').value.trim(); if(str.length==0){ alert('對(duì)不起,文本框不能為空或者為空格!');//請(qǐng)將“文本框”改成你需要驗(yàn)證的屬性名稱(chēng)! } } //判斷日期類(lèi)型是否為YYYY-MM-DD格式的類(lèi)型 function IsDate(){ var str = document.getElementById('str').value.trim(); if(str.length!=0){ var reg = /^(/d{1,4})(-|//)(/d{1,2})/2(/d{1,2})$/; var r = str.match(reg); if(r==null) alert('對(duì)不起,您輸入的日期格式不正確!'); //請(qǐng)將“日期”改成你需要驗(yàn)證的屬性名稱(chēng)! } } //判斷日期類(lèi)型是否為YYYY-MM-DD hh:mm:ss格式的類(lèi)型 function IsDateTime(){ var str = document.getElementById('str').value.trim(); if(str.length!=0){ var reg = /^(/d{1,4})(-|//)(/d{1,2})/2(/d{1,2}) (/d{1,2}):(/d{1,2}):(/d{1,2})$/; var r = str.match(reg); if(r==null) alert('對(duì)不起,您輸入的日期格式不正確!'); //請(qǐng)將“日期”改成你需要驗(yàn)證的屬性名稱(chēng)! } } //判斷日期類(lèi)型是否為hh:mm:ss格式的類(lèi)型 function IsTime() { var str = document.getElementById('str').value.trim(); if(str.length!=0){ reg=/^((20|21|22|23|[0-1]/d)/:[0-5][0-9])(/:[0-5][0-9])?$/ if(!reg.test(str)){ alert("對(duì)不起,您輸入的日期格式不正確!");//請(qǐng)將“日期”改成你需要驗(yàn)證的屬性名稱(chēng)! } } } //判斷輸入的字符是否為英文字母 function IsLetter() { var str = document.getElementById('str').value.trim(); if(str.length!=0){ reg=/^[a-zA-Z]+$/; if(!reg.test(str)){ alert("對(duì)不起,您輸入的英文字母類(lèi)型格式不正確!");//請(qǐng)將“英文字母類(lèi)型”改成你需要驗(yàn)證的屬性名稱(chēng)! } } } //判斷輸入的字符是否為整數(shù) function IsInteger() { var str = document.getElementById('str').value.trim(); if(str.length!=0){ reg=/^[-+]?/d*$/; if(!reg.test(str)){ alert("對(duì)不起,您輸入的整數(shù)類(lèi)型格式不正確!");//請(qǐng)將“整數(shù)類(lèi)型”要換成你要驗(yàn)證的那個(gè)屬性名稱(chēng)! } } } //判斷輸入的字符是否為雙精度 function IsDouble(val) { var str = document.getElementById('str').value.trim(); if(str.length!=0){ reg=/^[-/+]?/d+(/./d+)?$/; if(!reg.test(str)){ alert("對(duì)不起,您輸入的雙精度類(lèi)型格式不正確!");//請(qǐng)將“雙精度類(lèi)型”要換成你要驗(yàn)證的那個(gè)屬性名稱(chēng)! } } } //判斷輸入的字符是否為:a-z,A-Z,0-9 function IsString() { var str = document.getElementById('str').value.trim(); if(str.length!=0){ reg=/^[a-zA-Z0-9_]+$/; if(!reg.test(str)){ alert("對(duì)不起,您輸入的字符串類(lèi)型格式不正確!");//請(qǐng)將“字符串類(lèi)型”要換成你要驗(yàn)證的那個(gè)屬性名稱(chēng)! } } } //判斷輸入的字符是否為中文 function IsChinese() { var str = document.getElementById('str').value.trim(); if(str.length!=0){ reg=/^[/u0391-/uFFE5]+$/; if(!reg.test(str)){ alert("對(duì)不起,您輸入的字符串類(lèi)型格式不正確!");//請(qǐng)將“字符串類(lèi)型”要換成你要驗(yàn)證的那個(gè)屬性名稱(chēng)! } } } //判斷輸入的EMAIL格式是否正確 function IsEmail() { var str = document.getElementById('str').value.trim(); if(str.length!=0){ reg=/^/w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*$/; if(!reg.test(str)){ alert("對(duì)不起,您輸入的字符串類(lèi)型格式不正確!");//請(qǐng)將“字符串類(lèi)型”要換成你要驗(yàn)證的那個(gè)屬性名稱(chēng)! } } } //判斷輸入的郵編(只能為六位)是否正確 function IsZIP() { var str = document.getElementById('str').value.trim(); if(str.length!=0){ reg=/^/d{6}$/; if(!reg.test(str)){ alert("對(duì)不起,您輸入的字符串類(lèi)型格式不正確!");//請(qǐng)將“字符串類(lèi)型”要換成你要驗(yàn)證的那個(gè)屬性名稱(chēng)! } } } //判斷輸入的數(shù)字不大于某個(gè)特定的數(shù)字 function MaxValue() { var val = document.getElementById('str').value.trim(); if(str.length!=0){ reg=/^[-+]?/d*$/; if(!reg.test(str)){//判斷是否為數(shù)字類(lèi)型 if(val>parseInt('123')) //“123”為自己設(shè)定的最大值 { alert('對(duì)不起,您輸入的數(shù)字超出范圍');//請(qǐng)將“數(shù)字”改成你要驗(yàn)證的那個(gè)屬性名稱(chēng)! } } } }
Phone : /^((/(/d{2,3}/))|(/d{3}/-))?(/(0/d{2,3}/)|0/d{2,3}-)?[1-9]/d{6,7}(/-/d{1,4})?$/
Mobile : /^((/(/d{2,3}/))|(/d{3}/-))?13/d{9}$/
Url : /^http:////[A-Za-z0-9]+/.[A-Za-z0-9]+[//=/?%/-&_~`@[/]/':+!]*([^<>/"/"])*$/
IdCard : /^/d{15}(/d{2}[A-Za-z0-9])?$/
QQ : /^[1-9]/d{4,8}$/
某種特殊金額:/^((/d{1,3}(,/d{3})*)|(/d+))(/./d{2})?$/ //說(shuō)明:除“XXX XX,XXX XX,XXX.00”格式外
//為上面提供各個(gè)JS驗(yàn)證方法提供.trim()屬性
String.prototype.trim=function(){ return this.replace(/(^/s*)|(/s*$)/g, ""); }
調(diào)用:
<input type="text" name="str" >
<input type="button" value=" 確定 " onClick=""> //onClick中寫(xiě)自己要調(diào)用的JS驗(yàn)證函數(shù)
js 驗(yàn)證表單 js提交驗(yàn)證類(lèi)
附加:js驗(yàn)證radio是否選擇
<script language="javascript">function checkform(obj){for(i=0;i<obj.oo.length;i++) if(obj.oo[i].checked==true) return true;alert("請(qǐng)選擇")return false; }</script><form id="form1" name="form1" method="post" action="" onsubmit="return checkform(this)"> <input type="radio" name="oo" value="radiobutton" /> <input type="radio" name="oo" value="radiobutton" /> <input type="submit" name="Submit" value="提交" /></form>
以上內(nèi)容是小編給大家介紹的js正則表達(dá)式的相關(guān)知識(shí),希望對(duì)大家有所幫助!