【Ruby3.x】Regexp::match()メソッドの使い方
matchメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
matchメソッドは、正規表現が指定された文字列とパターンが一致するかどうかを判定し、その結果を詳細に取得するメソッドです。
このメソッドはRegexpクラスのインスタンスから呼び出され、対象の文字列を引数として受け取ります。文字列内に正規表現パターンと合致する部分があるかを確認するのが主な役割です。
パターンが見つかった場合、matchメソッドはMatchDataオブジェクトを返します。このオブジェクトには、一致した文字列全体(例: md[0])や、正規表現内のカッコ(())でキャプチャされた部分文字列(例: md[1]、md[2]など)といった詳細情報が含まれており、一致部分の情報をプログラムで具体的に利用できます。
一方、文字列内にパターンと一致する部分が全く見つからなかった場合はnilを返します。この返り値を利用することで、一致しなかった場合の処理を分岐させることが可能です。
matchメソッドは、ユーザー入力の形式検証、ログファイルからの特定情報の抽出、特定のパターンを持つ文字列の検索と利用など、システム開発における文字列処理の基盤として広く活用される重要な機能です。
構文(syntax)
1/正規表現パターン/.match("対象文字列")
引数(parameters)
string, pos = 0
- string: マッチング対象の文字列
- pos = 0: マッチングを開始する文字列のオフセット(位置)を示す整数。デフォルトは0(文字列の先頭)
戻り値(return)
MatchDataまたはnil
正規表現に文字列がマッチした場合、マッチした情報を格納したMatchDataオブジェクトを返します。マッチしなかった場合はnilを返します。