Regex#matchに続けてメソッドチェインをしたい場合、
ブロックを渡すか、tapに繋げる事で実現できます。
ブロックを渡す
ブロックを渡すと、結果が真の場合ブロックの中身を実行してくれます。
真でない場合はnilを返します
/(?<hrgn>\p{hiragana}+.*)/.match("ふが"){|m| m[:hrgn]} #=> "ふが" /(?<hrgn>\p{hiragana}+.*)/.match("piyo"){|m| m[:hrgn]} #=> nil
tapとbreakの合わせ技を使う
tap結果をreturnして使う場合はbreakです
/(?<hrgn>\p{hiragana}+.*)/.match("ふが").tap{break self ? true : false} #=> true