4 回答

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

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