【Ruby3.x】MatchData::regexp()メソッドの使い方
regexpメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
regexpメソッドは、Rubyにおいて、文字列に対する正規表現のマッチングが成功した際に生成されるMatchDataオブジェクトが、どの正規表現によって作成されたかを示すRegexpオブジェクトを返すメソッドです。
MatchDataオブジェクトは、正規表現の検索結果詳細(マッチした文字列全体やキャプチャグループなど)を格納します。このregexpメソッドを使用すると、特定のMatchDataオブジェクトがどのような正規表現パターンを用いてマッチングされたのかを、元のRegexpオブジェクトとして簡単に確認することができます。
例えば、複数の正規表現を動的に生成し、それらを文字列に適用した場合、どの正規表現が特定のマッチング結果(MatchDataオブジェクト)を生み出したのかを後から検証したい状況で役立ちます。MatchDataオブジェクトからこのメソッドを呼び出すことで、元になった正規表現を正確に把握し、その情報に基づいて処理の分岐やデバッグを行うことが可能になります。
本メソッドは常にRegexpクラスのインスタンスを返します。これにより、MatchDataオブジェクトが持つ詳細なマッチング結果に加え、その結果をもたらした正規表現の情報を直接参照できるため、より堅牢で理解しやすい正規表現処理の実装に貢献します。
構文(syntax)
1regexp_object = /ruby/ 2match_result = "Learn ruby programming".match(regexp_object) 3puts match_result.regexp
引数(parameters)
引数なし
引数はありません
戻り値(return)
Regexp
MatchData オブジェクトが、マッチングに使用された正規表現オブジェクトを返します。