Module: Stringincrement

Included in:
String
Defined in:
lib/stringincrement.rb,
lib/stringincrement/version.rb

Constant Summary collapse

VERSION =
"0.0.1"

Instance Method Summary collapse

Instance Method Details

#incrementObject



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/stringincrement.rb', line 4

def increment
  remains, last_number = self.match( /(.*?)(\d*)$/ ).captures
  if last_number != ""
    return "#{remains}#{last_number.to_i + 1}"
  else
    remains = remains.split("").reverse
    overbit = 1
    remains.map! do |char|
      ret = char[0] + overbit
      if ret == 123 || ret == 91
        ret -= 26
      else 
        overbit = 0
      end
      ret.chr
    end
    return remains.reverse.join("")
  end
end