【Node.js24.x】RegExp::multilineプロパティの使い方
multilineプロパティの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
multilineプロパティは、正規表現オブジェクトが複数行モード(multilineモード)で動作するかどうかを示す真偽値を保持するプロパティです。このプロパティは、Node.jsのJavaScript実行環境において、組み込みオブジェクトであるRegExp(正規表現)のインスタンスに属しており、その正規表現がm(multiline)フラグ付きで作成されたかどうかを判定するために使用されます。
正規表現におけるmフラグは、特殊なアンカーである^(行の先頭にマッチ)と$(行の末尾にマッチ)の挙動を変更します。通常、これらのアンカーは対象となる文字列全体の先頭と末尾にのみマッチします。しかし、mフラグが設定されている場合、^は文字列の先頭だけでなく、各改行文字(\n)の直後にもマッチするようになり、$は文字列の末尾だけでなく、各改行文字の直前にもマッチするようになります。これにより、複数行にわたるテキストを対象とする際に、各行の先頭や末尾に個別にパターンを適用できるようになります。
したがって、multilineプロパティの値がtrueであれば、その正規表現オブジェクトは複数行モードで動作することを意味し、falseであれば、複数行モードは無効であることを示します。このプロパティは、既存の正規表現オブジェクトのフラグ設定を確認する際に役立ちますが、このプロパティ自体を直接変更して正規表現の動作を切り替えることはできません。フラグ設定は、正規表現オブジェクトの作成時に指定する必要があります。
構文(syntax)
1const regex = /pattern/m; 2console.log(regex.multiline);
引数(parameters)
引数なし
引数はありません
戻り値(return)
boolean
RegExp.prototype.multiline プロパティは、正規表現がマルチラインモードで動作するかどうかを示す真偽値を返します。true の場合はマルチラインモード、false の場合はそうではありません。