exec メソッド

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

function exec(str : String) : Array

引数

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

解説

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

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

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

使用例

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

var src = "The quick brown fox jumps over the lazy dog.";

// Create regular expression pattern with a global flag.
var re = /\w+/g;

// Get the next word, starting at the position of lastindex.
var arr;
while ((arr = re.exec(src)) != null)
{
    print (arr.index + "-" + arr.lastIndex + " " + arr[0]);
}

// Output:
//  0-3 The
//  4-9 quick
//  10-15 brown
//  16-19 fox
//  20-25 jumps
//  26-30 over
//  31-34 the
//  35-39 lazy
//  40-43 dog

必要条件

Version 3

対象 :

Regular Expression オブジェクト

参照

参照

match メソッド

RegExp オブジェクト

search メソッド

test メソッド

概念

正規表現の構文