From: "(r.*n){2}" Date: 2010-09-23T12:35:11+09:00 Subject: Re: comparing the first half of a string to the second half On Sep 21, 11:24 pm, Josh Cheek wrote: > [Note:  parts of this message were removed to make it a legal post.] > > > > > > On Tue, Sep 21, 2010 at 3:41 PM, joe chesak wrote: > > I want to be able to test a string, to see if the second half of the string > > is a duplicate of the first part of the string, and if so I just want the > > first half (or the second for that matter).  I am using  ruby-1.9.2. > > > I can accomplish this with the following: > > > str = 'Cyano The CatCyano The Cat' > > > str = str[0..str.size/2-1] if str[0..str.size/2-1] == str[str.size/2..-1] > >  => "Cyano The Cat" > > > Is there a better way? > > > Joe > > Instead of subtracting 1 from the right side of the range, you can just use > 3 dots. > > str   = 'Cyano The CatCyano The Cat' > half  = str.size / 2 > first = str[0...half] > last  = str[half..-1] > str   = first if first == last > p str x = s.size y = x / 2 r = x % 2 puts "#{s[0..y-1]}" if ( r == 0) && (s[0..y-1] == s[y..-1])