このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。
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 2015年7月.
global はRegExp インスタンスのプロパティで、g フラグが正規表現で使われているかどうかを返します。
In this article
試してみましょう
const regex1 = /foo/g;console.log(regex1.global);// 予想される結果: trueconst regex2 = /bar/i;console.log(regex2.global);// 予想される結果: false解説
RegExp.prototype.global は、g フラグが使用された場合はtrue、そうでない場合はfalse になります。g フラグは、正規表現が文字列内のすべての可能なマッチに対してテストされるべきであることを示します。exec() を呼び出すたびにlastIndex プロパティが更新され、次のexec() の呼び出しが次の文字から始まるようになります。
String.prototype.matchAll() やString.prototype.replaceAll() のようないくつかのメソッドは、引数が正規表現である場合、それがグローバルであることを検証します。正規表現の[Symbol.match]() および[Symbol.replace]()(String.prototype.match() とString.prototype.replace() によって呼び出されます)も、正規表現がグローバルである場合に異なる動作をします。
global の設定アクセサーはundefined です。このプロパティを直接変更することはできません。
例
>global の使用
const globalRegex = /foo/g;const str = "fooexamplefoo";console.log(str.replace(globalRegex, "")); // exampleconst nonGlobalRegex = /foo/;console.log(str.replace(nonGlobalRegex, "")); // examplefoo仕様書
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-get-regexp.prototype.global> |