String.match
を返しますがMatchData
、一致した文字列を から取得するにはどうすればよいMatchData
ですか?
puts "foo bar".match(/(foo)/)
出力:
#<MatchData "foo" 1:"foo">
水晶初心者ですみません。
String.match
を返しますがMatchData
、一致した文字列を から取得するにはどうすればよいMatchData
ですか?
puts "foo bar".match(/(foo)/)
出力:
#<MatchData "foo" 1:"foo">
水晶初心者ですみません。
既知のグループ インデックスを介してアクセスできます。nil (一致しない) ケースを処理するようにしてください。
match = "foo bar".match(/foo (ba(r))/)
if match
# The full match
match[0] #=> "foo bar"
# The first capture group
match[1] #=> "bar"
# The second capture group
match[2] #=> "r"
end
詳細についてMatchData
は、API ドキュメントを参照してください。