js中test()函數在正則中使用


test() 方法用於檢測一個字符串是否匹配某個模式.

返回一個 Boolean 值,它指出在被查找的字符串中是否匹配給出的正則表達式。 
regexp.test(str)

參數

regexp 必選項。包含正則表達式模式或可用標志的正則表達式對象。 
str    必選項。要在其上測試查找的字符串。 
說明 
test 方法檢查字符串是否與給出的正則表達式模式相匹配,如果是則返回 true,否則就返回 false。

每個正則表達式都有一個 lastIndex 屬性,用於記錄上一次匹配結束的位置.

var re = /^[1-9]{4,10}$/gi;
var str = "123456";
alert(re.test(str));      //返回true

// 執行上面的 test 之后我們可以彈出

 

alert(re.lastIndex); // 彈出6

 

即表示上一次在第6個字符之后結束

那么下一次再調用 test 的時候, 就會從第6個字符之后繼續搜索

解決辦法,將正則表達式的 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,通過正則表達式實現。
//檢查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;
}
}

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM