4 回答

TA貢獻1831條經(jīng)驗 獲得超4個贊
正則表達式加上參數(shù)g之后,表明可以進行全局匹配。此外對于不同的對象方法,/g的含義有所不同,下面給出簡要介紹:
(1)對于表達式對象的exec方法,不加入g,則只返回第一個匹配;如果加入g,則第一次執(zhí)行也返回第一個匹配,再執(zhí)行返回第二個匹配,依次類推。對于exec方法,表達式加入了g,并不是說執(zhí)行exec方法就可以返回所有的匹配,而是說加入了g之后,可以通過某種方式得到所有的匹配,這里的“方式”對于exec而言,就是依次執(zhí)行這個方法即可。
(2)對于表達式對象的test方法,加入g于不加上g沒有什么區(qū)別。
(3)對于String對象的match方法,不加入g,也只是返回第一個匹配,一直執(zhí)行match方法也總是返回第一個匹配,加入g,則一次返回所有的匹配(注意這與表達式對象的exec方法不同,對于exec而言,表達式即使加上了g,也不會一次返回所有的匹配)。
(4)對于String對象的replace方法,表達式不加入g,則只替換第一個匹配,如果加入g,則替換所有匹配。
(5)對于String對象的split方法,加上g與不加g是一樣的。
(6)對于String對象的search方法,加不加g也是一樣的。
擴展材料:
1、正則表達式包括兩部分:
① 定義正則表達式的規(guī)則;
② 正則表達式的模式(i/g/m);
2、聲明正則表達式:
① 字面量聲明:
var reg=/表達式規(guī)則/表達式模式;
eg: var reg= /white/g;
② 使用new關鍵字:
var reg=new RegExp("表達式規(guī)則","表達式模式");
eg: var reg=new RegExp("white","g");
3、正則表達式的常用模式:
① g:全局匹配。不加g默認為非全局匹配,只匹配第一個符合要求的字符串。
② i:忽略大小寫。不加i,默認要求大小寫不匹配;
③ m:多行匹配模式。不帶m,則一個字符串只有一個開頭,一個結尾;
帶m后,如果字符串分為多行,則每行都有一個開頭,一個結尾。

TA貢獻1890條經(jīng)驗 獲得超9個贊
普通字符由所有那些未顯式指定為元字符的打印和非打印字符組成。這包括所有的大寫和小寫字母字符,所有數(shù)字,所有標點符號以及一些符號。
最簡單的正則表達式是一個單獨的普通字符,可以匹配所搜索字符串中的該字符本身。例如,單字符模式 'A' 可以匹配所搜索字符串中任何位置出現(xiàn)的字母 'A'。這里有一些單字符正則表達式模式的示例:
/a/
/7/
/M/
如何限制輸入數(shù)字的位數(shù),請參考下面
"\d{2}-\d{5}"
驗證一個ID 號碼是否由一個2位數(shù)字,一個連字符以及一個5位數(shù)字組成。
- 4 回答
- 0 關注
- 1593 瀏覽
添加回答
舉報