javascript的正規表示式的test()方法簡單介紹
本章節對於test()的基本用法不做介紹,具體可以參閱正規表示式test()函式一章節。
下面只對一個需要特別注意的地方進行一下簡單的介紹,否則可能會出現意想不到的結果。
先看一段程式碼:
[JavaScript] 純文字檢視 複製程式碼var reg=/\d/; console.log(reg.test("5"))
上面的程式碼可以輸出true,這應該沒有任何的疑問,再來看一段程式碼:
[JavaScript] 純文字檢視 複製程式碼var reg=/\d/g; console.log(reg.test("5"))
在上面的程式碼中,將正規表示式修改為全域性匹配,輸出值同樣是true,這個結果也是可以接受的。
再來看一段程式碼:
[JavaScript] 純文字檢視 複製程式碼var reg=/\d/g; console.log(reg.test("5")); console.log(reg.test("5")); console.log(reg.test("5")); console.log(reg.test("5"));
上面的程式碼輸出結果就有點"奇怪",並不都是true,下面就介紹一下之所以出現此問題的原因。
這是因為RegExp物件具有一個名為lastIndex的屬性,用來規定下一次匹配開始的位置,一定要注意,這裡是指的是下一次匹配開始的,而不是匹配成功的位置。在預設狀態下,lastIndex屬性值是0,當第一此匹配成功之後,lastIndex變成1,當然第二次匹配就會失敗,然後lastIndex又會被重置為0,那麼第三次匹配又會成功,以此類推。
關於lastIndex屬性可以參閱js正規表示式的lastIndex屬性用法介紹一章節。
相關文章
- Java正規表示式簡單介紹Java
- 簡單介紹python中使用正規表示式的方法Python
- oracle的正規表示式(regular expression)簡單介紹OracleExpress
- 正規表示式使用replace()函式簡單介紹函式
- 簡單介紹Idea使用正規表示式批量替換字串的方法Idea字串
- 簡單學習 JavaScript 正規表示式JavaScript
- 正規表示式簡介
- 十六進位制在正規表示式中的使用簡單介紹
- 簡單介紹正規表示式拆分url例項程式碼
- 正規表示式中test、exec、match的區別介紹及括號的用法
- 正規表示式語法介紹
- JavaScript的正規表示式JavaScript
- 正規表示式i大小寫識別符號作用簡單介紹符號
- javascript表示式中的運算順序簡單介紹JavaScript
- re正規表示式庫的簡介、入門、使用方法
- Java 正規表示式的簡單應用.Java
- JavaScript正規表示式方法總結JavaScript
- 【JavaScript】正規表示式JavaScript
- javascript正規表示式JavaScript
- javascript–正規表示式JavaScript
- 常用正規表示式匹配程式碼介紹
- 正規表示式單行、多行模式簡介(使用說明)模式
- 正規表示式查詢相似單詞的方法
- 超簡單!正規表示式總結
- JavaScript正規表示式(2)JavaScript
- javascript AMD規範簡單介紹JavaScript
- javascript呼叫函式的方式簡單介紹JavaScript函式
- javascript匿名函式的使用簡單介紹JavaScript函式
- [記錄]javascript常用的正規表示式JavaScript
- javascript常用的驗證正規表示式JavaScript
- 匹配javascript註釋的正規表示式JavaScript
- JavaScript中的正規表示式(2) (轉)JavaScript
- JavaScript中的正規表示式(1) (轉)JavaScript
- 為什麼正規表示式的test()函式總是返回true函式
- JavaScript正規表示式備忘單附例項JavaScript
- [JavaScript] 正規表示式單次匹配與多次匹配JavaScript
- 正規表示式 split()方法
- javascript鏈式呼叫簡單介紹JavaScript