From: Louis J Scoras Date: 2006-05-13T00:07:06+09:00 Subject: Re: Is there a method for incrementing string names?!? > But don't forget: > > irb(main):001:0> 'aa9'.succ > => "ab0" > > So it won't do what's needed. > > Cheers, > > Pedro. > *agrees* How about something like this? def next_name(s) s.reverse =~ /(\d*)(.*)/ digits_r, word_r = $~[1,2] digits = digits_r ? digits_r.reverse.to_i : 0 digits += 1 word_r.reverse + digits.to_s end next_name "var" # => "var1" next_name "var32" # => "var33" next_name "var99" # => "var100" String.succ will blow up for cases 1 and 3. -- Lou