From: Neil Kohl Date: 2007-06-20T04:33:55+09:00 Subject: Re: Regular Expresion Needed ------=_Part_97604_29383451.1182281637046 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline Assume you meant to match \d{3} since \d{4} won't match anything in your test string. Pass a regexp to String#scan: irb(main):027:0>s = 'abc123def456ghi789jkl' irb(main):028:0> s.scan(/(\d{3})/).each do |m| irb(main):029:1* puts m irb(main):030:1> end 123 456 789 => [["123"], ["456"], ["789"] On 6/19/07, Matt White wrote: > > Hello, > > I am fairly new to Ruby. I have some good Perl experience and I need > to "translate" a regex in Perl over to Ruby. Here's what I have: > > $_ = 'abc123def456ghi789jkl'; > while(m/(\d{4})/g) > { print "$1\n"; } > > Which outputs: > 123 > 456 > 789 > > Ruby doesn't seem to have the same modifiers that Perl does (that > handy little g). How can I get this same output in Ruby? Thanks! > > > -- Neil Kohl nakohl@gmail.com ------=_Part_97604_29383451.1182281637046--