RegExp.prototype.global - JavaScript | MDN (original) (raw)
Baseline
Widely available
The global
accessor property of RegExp instances returns whether or not the g
flag is used with this regular expression.
Try it
const regex1 = new RegExp("foo", "g");
console.log(regex1.global);
// Expected output: true
const regex2 = new RegExp("bar", "i");
console.log(regex2.global);
// Expected output: false
Description
RegExp.prototype.global
has the value true
if the g
flag was used; otherwise, false
. The g
flag indicates that the regular expression should be tested against all possible matches in a string. Each call to exec() will update its lastIndex property, so that the next call to exec()
will start at the next character.
Some methods, such as String.prototype.matchAll() and String.prototype.replaceAll(), will validate that, if the parameter is a regex, it is global. The regex's Symbol.match and Symbol.replace methods (called by String.prototype.match() and String.prototype.replace()) would also have different behaviors when the regex is global.
The set accessor of global
is undefined
. You cannot change this property directly.
Examples
Using 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
Specifications
Specification |
---|
ECMAScript® 2026 Language Specification # sec-get-regexp.prototype.global |