【JavaScript ECMAScript】Capturing group: (...)言語機能の使い方
Capturing group: (...)言語機能の使い方について、初心者にもわかりやすく解説します。
基本的な使い方
Capturing group: (...)オブジェクトは、JavaScriptの正規表現において、特定のパターンをグループ化し、かつそのグループにマッチした文字列を「キャプチャ」(捕捉・記憶)するための構文を表すオブジェクトです。
この構文は、主に二つの重要な役割を持っています。一つは、複数の文字や正規表現のパターンを()で囲むことで、それらを一つのまとまりとして扱う「グループ化」の機能です。これにより、グループ全体に対して量指定子(例えば、+や*、{n}など)を適用できるようになります。例えば、(abc)+というパターンは、「abc」という並びが1回以上繰り返される文字列にマッチします。
もう一つの役割は、正規表現が文字列とマッチした際に、そのグループが担当した部分文字列を記憶する「キャプチャ」の機能です。キャプチャされた文字列は、正規表現のマッチ結果を格納する配列やオブジェクトからアクセスしたり、String.prototype.replace()メソッドの置換文字列内で$1、$2といった特殊な変数を使って参照したりすることができます。これにより、複雑な文字列から特定の情報だけを抽出したり、柔軟な文字列の置換操作を行ったりすることが可能になります。
例えば、"姓 名".match(/(\w+) (\w+)/)を実行すると、マッチした結果の配列には、「姓」と「名」それぞれが独立した要素としてキャプチャされて含まれます。このように、Capturing group: (...)は、正規表現をより強力で柔軟なツールとして活用するために不可欠な要素です。
構文(syntax)
1const regex = /(pattern)/;
引数(parameters)
引数なし
引数はありません
戻り値(return)
戻り値なし
戻り値はありません