matchメソッド

メソッド match は、正規表現とのマッチング結果を配列で返します。 マッチするものがなければ、null を返します。 修飾子 g なしで呼び出された場合、このメソッドは 配列を返し、その0番目の要素には見つかった部分文字列が入り、 その他の要素にはキャプチャグループ(括弧で囲まれた部分)の内容が入ります。 修飾子 g を付けて呼び出された場合、 すべてのマッチした部分を配列の形で返します。

構文

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

例

正規表現とマッチする部分を見つけ、 キャプチャグループに分解してみましょう:

javascriptlet str = '12:34';
let res = str.match(/(\d+):(\d+)/);

console.log(res[0]); // マッチした全体
console.log(res[1]); // 1番目のキャプチャグループ
console.log(res[2]); // 2番目のキャプチャグループ

コードの実行結果:

javascript'12:34'
'12'
'34'

例

文字 'a' からなる部分文字列の配列を取得してみましょう:

javascriptlet str = 'a aa aaa aaaa';
let res = str.match(/a+/g);

console.log(res);

コードの実行結果:

javascript['a', 'aa', 'aaa', 'aaaa']

関連項目

  • 文字列をテストするメソッド test,
  • 文字列内のすべてのマッチを検索するメソッド matchAll,
  • 連続的な検索を実行するメソッド exec,
  • 検索と置換を実行するメソッド replace,
  • 検索を実行するメソッド search,
  • 文字列を分割するメソッド split,