RegExp.prototype.global

基线 广泛可用

此功能非常成熟,可在许多设备和浏览器版本上运行。它从 2015 年 7 月.

报告反馈

试试

描述

globalRegExp 实例的访问器属性,它返回正则表达式是否使用 g 标志。

如果使用 g 标志,则 RegExp.prototype.global 的值为 true;否则为 falseg 标志表示正则表达式应该在字符串中针对所有可能的匹配项进行测试。每次调用 exec() 都会更新其 lastIndex 属性,以便下次调用 exec() 会从下一个字符开始。

某些方法(如 String.prototype.matchAll()String.prototype.replaceAll())会验证如果参数是正则表达式,则它必须是全局的。正则表达式的 [Symbol.match]()[Symbol.replace]() 方法(由 String.prototype.match()String.prototype.replace() 调用)在正则表达式是全局时也会有不同的行为。

示例

global 的设置访问器为 undefined。你无法直接更改此属性。

使用 global
const regex = /foo/g;
console.log(regex.global); // true

const str = "fooexamplefoo";
const str1 = str.replace(regex, "");
console.log(str1); // example

const regex1 = /foo/;
const str2 = str.replace(regex1, "");
console.log(str2); // examplefoo

规范

js
规范
# ECMAScript 语言规范

浏览器兼容性

sec-get-regexp.prototype.global

另请参阅