matchAllメソッド

メソッド matchAllは、 正規表現にマッチするすべての結果を 反復可能オブジェクトとして返します。 各要素には、マッチした文字列とキャプチャグループの配列が含まれます。 このメソッドは修飾子 g を付けた場合にのみ呼び出すことができます。 マッチするものがない場合は null を返します。

構文

javascript文字列.matchAll(正規表現);

例

すべてのマッチを取得し、ループで反復処理します:

javascriptlet str = '12 34 56';
let matches = str.matchAll(/(\d)(\d)/g);

for (let match of matches) {
  console.log(match);
}

コードの実行結果:

javascript[12, 1, 2]
[34, 3, 4]
[56, 5, 6] 

例

反復可能オブジェクトを通常の配列に変換します:

javascriptlet str = '12 34 56';
let matches = str.matchAll(/(\d)(\d)/g);
let res = Array.from(matches);

console.log(res);

コードの実行結果:

javascript[
  [12, 1, 2],
  [34, 3, 4],
  [56, 5, 6]
]

関連項目

  • メソッド test,
    文字列を検査します
  • メソッド match,
    文字列内でマッチするものを検索します
  • メソッド exec,
    逐次検索を実行します
  • メソッド replace,
    検索と置換を実行します
  • メソッド search,
    検索を実行します
  • メソッド split,
    文字列を分割します