Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class String
- alias _match match
- def match(*args)
- m = _match(args.shift)
- if m && m.length > 1
- meta = (class << m; self; end)
- args.each_with_index do |name, index|
- meta.send(:define_method, name) { self[index+1] }
- end
- end
- m
- end
- end
- m = "12:34:56".match(/(\d+):(\d+):(\d+)/, :hour, :minute, :second)
- puts m.hour
- puts m.minute
- puts m.second
Add Comment
Please, Sign In to add comment