傳回 Boolean 值,指出正規表示式使用的global 標誌 (g) 的狀態。預設值為 false。只讀。 rgExp.global 必選項 rgExp 參數是正規表示式物件。 如果正規表示式設定了global 標誌,那麼global 屬性傳回 true,否則傳回 false。 使用 global 標誌表示在被尋找的字串中搜尋操作將會尋找所有符合的項,而不僅僅是第一個。這也被稱為全域匹配。
一直不是很清楚javascript的global到底表現在哪些方面,所以今天特地做了幾個測試:
var str = 'bbaaabb', reg = /^b|b$/; while(reg.test(str)){ str = str.replace(reg,''); console.log(reg.lastIndex + ":" + str); }
最終結果:
//0:baaabb //0:aaabb //0:aaab //0:aaa
但是如果稍做一些修改
var str = 'bbaaabb', reg = /^b|b$/g; while(reg.test(str)){ str = str.replace(reg,''); console.log(reg.lastIndex + ":" + str); }
最終結果則是:
//0:baaab //0:aaa
這樣的結果說明,global模式下,在匹配到了開始的b字符後,也會繼續匹配結尾的b字符,從而忽略掉中間"|"操作符。
JavaScript 正規表示式中global模式的特性就給大家介紹這麼多,更多相關內容請關注PHP中文網(www.php.cn)!