RegExp.prototype.global
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Die global
Zugriffs-Property von RegExp
Instanzen gibt zurück, ob das g
-Flag mit diesem regulären Ausdruck verwendet wird oder nicht.
Probieren Sie es aus
const regex1 = /foo/g;
console.log(regex1.global);
// Expected output: true
const regex2 = /bar/i;
console.log(regex2.global);
// Expected output: false
Beschreibung
RegExp.prototype.global
hat den Wert true
, wenn das g
-Flag verwendet wurde; andernfalls false
. Das g
-Flag zeigt an, dass der reguläre Ausdruck auf alle möglichen Übereinstimmungen in einem String getestet werden soll. Jeder Aufruf von exec()
wird die lastIndex
-Eigenschaft aktualisieren, sodass der nächste Aufruf von exec()
beim nächsten Zeichen beginnt.
Einige Methoden, wie z. B. String.prototype.matchAll()
und String.prototype.replaceAll()
, werden validieren, dass, wenn der Parameter ein Regex ist, es global ist. Die Methoden [Symbol.match]()
und [Symbol.replace]()
des Regex (aufgerufen durch String.prototype.match()
und String.prototype.replace()
) würden ebenfalls unterschiedliche Verhaltensweisen zeigen, wenn das Regex global ist.
Der Set-Zugriff von global
ist undefined
. Sie können diese Eigenschaft nicht direkt ändern.
Beispiele
Verwendung von global
const globalRegex = /foo/g;
const str = "fooexamplefoo";
console.log(str.replace(globalRegex, "")); // example
const nonGlobalRegex = /foo/;
console.log(str.replace(nonGlobalRegex, "")); // examplefoo
Spezifikationen
Specification |
---|
ECMAScript® 2026 Language Specification # sec-get-regexp.prototype.global |