Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【Ruby3.x】Regexp::source()メソッドの使い方

sourceメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

sourceメソッドは、RubyのRegexpクラスのインスタンスが保持する正規表現のパターン文字列を取得するメソッドです。

正規表現は、文字列の中から特定の文字の並び(パターン)を検索したり、一致するかどうかを判定したりするために用いられる強力なツールです。Regexpオブジェクトは、この正規表現のパターンを内部に保持しています。sourceメソッドを呼び出すと、そのRegexpオブジェクトが表現している正規表現の「元となる文字列」が返されます。

例えば、/ruby/という正規表現リテラルやRegexp.new('ruby')で作成された正規表現オブジェクトに対してsourceメソッドを実行すると、"ruby"という文字列が返されます。また、/^\d+$/のようなメタ文字(正規表現で特別な意味を持つ文字、例えば^$など)や特殊シーケンス(\dなど)を含む複雑な正規表現であっても、sourceメソッドはオプション(例:/i)部分を除いた "^\\d+$" のように、正規表現として定義された通りのパターン文字列をそのまま返します。

このメソッドは、プログラム内で正規表現のパターン部分を動的に参照したい場合や、デバッグのためにその定義内容を文字列として確認したい場合に非常に便利です。特に、複雑な正規表現を扱っている場合や、既存の正規表現のパターン部分を基に新たな正規表現を生成するような場面で、その真価を発揮します。

構文(syntax)

1/pattern/.source

引数(parameters)

引数なし

引数はありません

戻り値(return)

String

正規表現パターンそのものを文字列として返します。

関連コンテンツ