在上一篇文章中我們講了正則表達(dá)式的基本用法,接下來(lái)博主想聊聊其中的細(xì)節(jié),今天就從正則修飾符開(kāi)始吧。
正則修飾符又稱(chēng)為正則標(biāo)記(flags),它會(huì)對(duì)正則的匹配規(guī)則做限定,進(jìn)而影響匹配的最終結(jié)果。在上次的文章中我們也提到過(guò),正則修飾符一共有以下幾種,可以單獨(dú)使用,也可以組合使用:
/\w+/g; // global search/\w+/i; // ignore case/\w+/m; // multi-line/\w+/u; // unicode/\w+/y; // sticky/\w+/gi;new RegExp('\\w+', 'gi');
其中的i好理解,正如上面的注釋一樣,ignore case或case insensitive,忽略大小寫(xiě)。
下面是一個(gè)簡(jiǎn)單的例子,正則表達(dá)式加上了i修飾符之后也可以匹配到大寫(xiě)字母:
'Hello World'.match(/hello/i); // ["Hello"]/hello/i.exec('Hello World'); // ["Hello"]
再來(lái)看看全局匹配修飾符g,下面是一個(gè)全局匹配的例子:
var source = 'hello world hello JS'; source.match(/hello/); // ["hello"]source.match(/hello/g); // ["hello", "hello"]