abcdとefgに囲まれた文字列が欲しいとする。 text = 'abcd123efg' re = Regexp.new('(abcd(.*)efg)') m = re.match(text) puts m[0] # -> abcd123efg puts m[1] # -> abcd123efg puts m[2] # -> 123 これが欲しいやつ括弧がキモ ネタ元 http://www.geocities.jp/m_hiroi/light/abcruby06.html 参考 メタプログラミングRuby