On Sun, 7 Jan 2007, Claus Guttesen wrote: > Hi. > > I need to get the last three characters in a string. I couldn't find a > function in the String class so I came up with this: > > class Remainder > > attr_writer :n > > def initialize(t = "", n = 0) > @t = t.to_s > @n = n.to_i > end > > def get > get_remaining_letters > end > > private > def get_remaining_letters > s = @t.size > if s < @n > r = 0 > else > r = s - @n > end > > ft = @t.slice(r, @n) > end > > end > > > t = Remainder.new("Guttesen", 5) > puts t.get > tesen > t.n = 4 > puts t.get > esen > > Did I reinvent the wheel or does it make sense to add it to String? You can index strings from the right with negative numbers: "abcdef"[-3..-1] => "def" I think that might be all you need. David -- Q. What is THE Ruby book for Rails developers? A. RUBY FOR RAILS by David A. Black (http://www.manning.com/black) (See what readers are saying! http://www.rubypal.com/r4rrevs.pdf) Q. Where can I get Ruby/Rails on-site training, consulting, coaching? A. Ruby Power and Light, LLC (http://www.rubypal.com)