global プロパティ
正規表現で使用する global フラグ (g) の状態を表すブール値を返します。
rgExp.global
引数
- rgExp
必ず指定します。 Regular Expression オブジェクトのインスタンスを指定します。
解説
global プロパティは読み取り専用で、正規表現のグローバル フラグが設定されているときは true を返し、設定されていないときは false を返します。 既定値は false です。
global フラグを使用すると、検索文字列内のパターンの最初の 1 候補だけではなく、すべての候補を検索できます。 これはグローバル マッチングとも呼びます。
使用例
global プロパティの使用例を次に示します。 以下の関数に g を渡した場合、"the" という単語がすべて "a" に置換されます。 i (大文字と小文字の区別を無視) フラグが関数に渡されていないため、文字列の先頭にある "The" は置換されません。
この関数は、設定可能な g、i、および m の各正規表現フラグに関連付けられたブール値を表示します。 また、すべての置換が適用された文字列も表示します。
function RegExpPropDemo(flag){
// The flag parameter is a string that contains
// g, i, or m. The flags can be combined.
// Check flags for validity.
if (flag.match(/[^gim]/))
{
return ("Flag specified is not valid");
}
// Create the string on which to perform the replacement.
var orig = "The batter hit the ball with the bat ";
orig += "and the fielder caught the ball with the glove.";
// Replace "the" with "a".
var re = new RegExp("the", flag);
var r = orig.replace(re, "a");
// Output the resulting string and the values of the flags.
print ("global: " + re.global.toString());
print ("ignoreCase: " + re.ignoreCase.toString());
print ("multiline: " + re.multiline.toString());
print ("Resulting String: " + r);
}
RegExpPropDemo("g");
出力結果は次のようになります。
global: true
ignoreCase: false
multiline: false
Resulting String: The batter hit a ball with a bat and a fielder caught a ball with a glove.