【Node.js24.x】RegExp::sourceプロパティの使い方
sourceプロパティの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
sourceプロパティは、Node.jsのRegExp(正規表現)オブジェクトに属し、その正規表現のパターン部分を文字列として保持するプロパティです。このプロパティを使用すると、正規表現リテラル(例: /abc/i)やRegExpコンストラクタ(例: new RegExp('abc', 'i'))で作成された正規表現から、スラッシュ記号やフラグ(g, i, mなど)を含まない、純粋なパターン文字列のみを取得できます。
例えば、/hello\.world/iという正規表現があった場合、sourceプロパティはhello\.worldという文字列を返します。正規表現内で使用されるエスケープシーケンス(例: \dで数字を表す、\.でピリオドそのものを表す)も、結果の文字列にはそのまま含まれます。このプロパティは読み取り専用であり、値の変更はできません。もし空の正規表現オブジェクト(new RegExp())に対してsourceプロパティを参照した場合、""(空文字列)が返されます。
sourceプロパティは、既存の正規表現のパターン部分を動的に参照したい場合や、デバッグ目的で正規表現の内部パターンを確認したい場合、あるいは既存のパターンを基にして新しい正規表現を生成したい場合などに非常に役立ちます。システムエンジニアを目指す上で、正規表現の挙動を深く理解し、柔軟に操作するために重要なプロパティの一つです。
構文(syntax)
const regex = new RegExp('pattern', 'gi');
console.log(regex.source);
引数(parameters)
引数なし
引数はありません
戻り値(return)
string
RegExpオブジェクトが内部で保持している正規表現パターンを文字列として返します。