JavaScript RegExp g 修饰符

定义和用法

"g" 修饰符规定全局匹配。

全局匹配查找所有匹配项(与仅匹配第一项相比)。

实例

例子 1

全局搜索 "is":

let pattern = /is/g;
let result = text.match(pattern);

亲自试一试

例子 2

使用正则表达式函数 exec():

let text = "Is this all there is?";

let pattern = /is/g;
let result = pattern.exec(text);

亲自试一试

例子 3

使用正则表达式函数 test():

let pattern = /is/g;
let result = pattern.test(text);

亲自试一试

例子 4

使用字符串函数 match():

let pattern = /is/g;
let result = text.match(pattern);

亲自试一试

语法

new RegExp("regexp", "g")

或者简写:

/regexp/g

提示

对于全局、不区分大小写的搜索,请将 "i" 修饰符 与 g 修饰符一起使用。

对 "is" 的全局、不区分大小写的搜索:

例子 1

使用正则表达式函数 exec():

let text = "Is this all there is?";
let result = /is/gi.exec(text);

亲自试一试

例子 2

使用正则表达式函数 test():

let text = "Is this all there is?";
let result = /is/gi.test(text);

亲自试一试

例子 3

使用字符串函数 match():

let text = "Is this all there is?";
let result = text.match(/is/gi);

亲自试一试

提示

您可以使用 global 属性 检查是否设置了 g 修饰符。

let pattern = /W3S/g;
let result = pattern.global;

亲自试一试

浏览器支持

/regexp/g 是 ECMAScript1 (ES1) 特性。

所有浏览器都完全支持 ES1 (JavaScript 1997):

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()