JavaScript RegExp m Modifier

Paglilinaw at Paggamit

Modulo "m" ayos sa pagtugma ng maraming linya.

它只影響開頭處 ^ 和結尾處 $ 的行為。

^ 規定字符串開頭的匹配項。

$ 規定字符串末尾的匹配項。

設置 "m" 後,^$ 也匹配每行的開頭和結尾。

實例

在字符串中每一行的開頭,多行搜索 "is":

let text = `Is this
all there
is`
let pattern = /^is/m;

親自試試

提示 1

"m" 調節器區分大小寫而非全局。

如需執行全局、不區分大小寫的搜索,請將 "m" 與 "g" 和 "i" 一起使用。

例子 1

在每個字符串行的開頭對 "is" 進行全局多行搜索:

let text = `Is this
all there
is`
let pattern = /^is/gm;

親自試試

例子 2

在每個字符串行的開頭對 "is" 進行全局、不區分大小寫的多行搜索:

let text = `Is this
all there
is`
let pattern = /^is/gmi;

親自試試

例子 3

在每個字符串行的末尾對 "is" 進行全局多行搜索:

let text = `Is this
all there
is`
let text = "Is\nthis\nhis\n?";
let pattern = /is$/gm;

親自試試

提示 2

可使用 multiline 屬性檢查是否設置了 m 調節器。

檢查是否設置了 "m" 調節器:
let pattern = /W3S/gi;
let result = pattern.multiline;

親自試試

語法

new RegExp("regexp", "m")

或者簡寫:

/regexp/m

瀏覽器支持

/regexp/m 是 ECMAScript3 (ES3) 特性。

所有瀏覽器都支持 ES3 (JavaScript 1999):

Chrome IE Edge Firefox Safari Opera
支持 支持 支持 支持 支持 支持

正則表達式搜索方法

在 JavaScript 中,正則表達式文本搜索可以用不同的方法完成。

使用模式(pattern)作為正則表達式,這些是最常用的方法:

例證 描述
text.match(pattern) 字符串方法 match()
text.search(pattern) 字符串方法 search()
pattern.exec(text) RexExp 方法 exec()
pattern.test(text) RexExp 方法 test()