首頁  >  文章  >  web前端  >  正規全域匹配模式g修飾符的使用詳解

正規全域匹配模式g修飾符的使用詳解

php中世界最好的语言
php中世界最好的语言原創
2018-03-30 13:46:222195瀏覽

這次為大家帶來正規全域匹配模式g修飾符的使用詳解,使用正規全域匹配模式g修飾符的注意事項有哪些,以下就是實戰案例,一起來看一下。

正規表示式g修飾符:

g修飾詞用語規定正規表示式執行全域匹配,也就是在找到第一個匹配之後仍然會繼續查找。

語法結構:

建構子方式:

new RegExp("regexp","g")

物件直接量方式:

/regexp/g

瀏覽器支援:

#IE瀏覽器支援此元字元。
火狐瀏覽器支援此元字元。
Google瀏覽器支援此元字元。

實例代碼:

實例一:

var str="this is an antzone good"; 
var reg=/an/;
console.log(str.match(reg));

以上程式碼只能夠匹配第一個"an",因為並沒有進行全域匹配,在第一個配對成功之後,就不再繼續配對了。

實例二:

var str="this is an antzone good"; 
var reg=/an/g;
console.log(str.match(reg));

以上程式碼能夠符合到兩個"an"。

以下是補充

這篇文章來詳細介紹js中正規表示式的全域匹配模式/g用法,程式碼如下:

var str = "123#abc"; 
var re = /abc/ig; 
console.log(re.test(str)); //输出ture 
console.log(re.test(str)); //输出false 
console.log(re.test(str)); //输出ture 
console.log(re.test(str)); //输出false

在當建立正規表示式物件時如果使用了「g」標識符或設定它了的global屬性值為ture時,那麼新建立的正則表達式物件將使用模式對要將要匹配的字符串進行全域匹配。在全域匹配模式下可以對指定要尋找的字串執行多次匹配。每次符合使用目前正規物件的lastIndex屬性的值作為在目標字串中開始尋找的起始位置。 lastIndex屬性的初始值為0,找到匹配的項後lastIndex的值被重置為匹配內容的下一個字元在字串中的位置索引,用來標識下次執行匹配時開始查找的位置,如果找不到符合的項lastIndex的值會被設定為0。當沒有設定正規物件的全域匹配標誌時lastIndex屬性的值始終為0,每次執行符合僅查找字串中第一個符合的項。可以通下面的程式碼來查看在執行匹配對應的lastIndex 屬性的值,程式碼如下:

var str = "123#abc"; 
var re = /abc/ig; 
console.log(re.test(str)); //输出ture 
console.log(re.lastIndex); //输出7 
console.log(re.test(str)); //输出false 
console.log(re.lastIndex); //输出0 
console.log(re.test(str)); //输出ture 
console.log(re.lastIndex); //输出7 
console.log(re.test(str)); //输出false 
console.log(re.lastIndex); //输出0

相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

推薦閱讀:

正規的模式修飾符使用詳解

#正規表示式的.號元字元使用詳解(附程式碼)

以上是正規全域匹配模式g修飾符的使用詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn