exec メソッド

更新 : 2007 年 11 月

正規表現パターンを使って文字列に対して検索を実行し、検索結果を配列に格納して返します。

function exec(str : String) : Array

引数

  • str
    必ず指定します。検索対象とする String オブジェクトの名前またはリテラル文字列を指定します。

解説

パターンに一致する文字列が見つからなかった場合、exec メソッドは null を返します。一致する文字列が見つかった場合は、配列を返し、さらにグローバルな RegExp オブジェクトのプロパティが検索結果を反映して更新されます。配列の要素 0 には一致結果全体が、要素が 1 から n には、一致結果の中に副次的に含まれる一致の内容が格納されます。この処理は、グローバル フラグ (g) が設定されていない場合の match メソッドの処理と同じです。

正規表現でグローバル フラグが設定されている場合は、lastIndex の値で指定された位置から文字列の検索が開始されます。グローバル フラグが設定されていない場合、lastIndex の値に関係なく検索は文字列の先頭から開始されます。

exec メソッドが返す配列には、inputindex、および lastIndex の 3 つのプロパティがあります。input プロパティには、検索された文字列全体が格納されます。index プロパティには、検索された文字列内の一致した部分文字列の位置が格納されます。lastIndex プロパティには、一致文字列の末尾の文字に続く位置が格納されます。

使用例

exec メソッドの使用例を次に示します。

function RegExpTest() {
   var s = "";
   var src = "The rain in Spain falls mainly in the plain.";
   // Create regular expression pattern for matching a word.
   var re = /\w+/g;
   var arr;
   // Loop over all the regular expression matches in the string.
   while ((arr = re.exec(src)) != null)
      s += arr.index + "-" + arr.lastIndex + "\t" + arr + "\n";
   return s;
}

必要条件

Version 3

対象

Regular Expression オブジェクト

参照

概念

正規表現の構文

参照

match メソッド

RegExp オブジェクト

search メソッド

test メソッド