Hi, At Sun, 12 Jun 2005 04:29:27 +0900, Jamis Buck wrote in [ruby-talk:145177]: > class Substring < String > def sub!(pat, r=nil, &b) > super(pat, r, &b) m = eval("proc{$~}", b).call # get caller's MatchData > # -------------------- > p $1 # -> "ll" > # -------------------- p m[1] # -> "ll" > end > end -- Nobu Nakada