Jesús Gabriel y Galán wrote:
> 
> This is one way that solves what you said. The problem with regexes is
> how it will handle the cases you didn't say :-)
> (for example, what do you want to match when there are more "ends" and 
> so on).
> 
> irb(main):002:0> text =<<EOF
> irb(main):003:0" def
> irb(main):004:0"   test = 100;
> irb(main):005:0"   puts test
> irb(main):006:0"   (1..10).each { |i| puts i }
> irb(main):007:0" end
> irb(main):008:0" EOF
> => "def\n  test = 100;\n  puts test\n  (1..10).each { |i| puts i 
> }\nend\n"
> irb(main):011:0> m = text.match /def(.*)end/m
> => #<MatchData "def\n  test = 100;\n  puts test\n  (1..10).each { |i|
> puts i }\nend" 1:"\n  test = 100;\n  puts test\n  (1..10).each { |i|
> puts i }\n">
> irb(main):012:0> m[1]
> => "\n  test = 100;\n  puts test\n  (1..10).each { |i| puts i }\n"
> 
> Hope this helps,
> 
> Jesus.

Thank you, it did helped me.
Actually I've tried using the same regex as you use, which is 
/def(.*)end/, however i overlooked the m in the end of /
Thank you

Ahmad Azizan,

-- 
Posted via http://www.ruby-forum.com/.