淺談js中test()函數(shù)在正則中的使用
test() 方法用于檢測一個字符串是否匹配某個模式.
返回一個 Boolean 值,它指出在被查找的字符串中是否匹配給出的正則表達式。
regexp.test(str)
參數(shù)
regexp 必選項。包含正則表達式模式或可用標志的正則表達式對象。
str 必選項。要在其上測試查找的字符串。
說明
test 方法檢查字符串是否與給出的正則表達式模式相匹配,如果是則返回 true,否則就返回 false。
每個正則表達式都有一個 lastIndex 屬性,用于記錄上一次匹配結(jié)束的位置.
var re = /^[1-9]{4,10}$/gi; var str = "123456"; alert(re.test(str)); //返回true
// 執(zhí)行上面的 test 之后我們可以彈出
alert(re.lastIndex); // 彈出6
即表示上一次在第6個字符之后結(jié)束
那么下一次再調(diào)用 test 的時候, 就會從第6個字符之后繼續(xù)搜索
解決辦法,將正則表達式的 lastIndex 屬性設置為0
具體代碼如下
<script type="text/javascript"> var re = /^[1-9]{4,10}$/gi; var str = "123456"; alert(re.test(str)); //返回true re.lastIndex=0; alert(re.test(str)); //返回true </script>
JavaScript表單驗證email郵箱,判斷一個輸入量是否為郵箱email,通過正則表達式實現(xiàn)。
//檢查email郵箱
function check(){ var email=document.getElementById("email").value; var isemail=/^[a-z]([a-z0-9]*[-_]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?$/i; if (email=="") { alert("請輸入您的郵箱!"); return false; } if (email.length>25){ alert("長度太長"); return false } if (!isemail.test(email)){ alert("不是郵箱"); return false; } }
以上這篇淺談js中test()函數(shù)在正則中的使用就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
在javascript中,null>=0 為真,null==0卻為假,null的值詳解
這篇文章主要介紹了在javascript中,null>=0 為真,null==0卻為假,null的值詳解的相關(guān)資料,需要的朋友可以參考下2017-02-02JavaScript實現(xiàn)網(wǎng)頁頭部進度條刷新
這篇文章主要介紹了JavaScript實現(xiàn)網(wǎng)頁頭部進度條刷新實例代碼,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-04-04