class String

Public Instance Methods

camelize(uppercase_first_letter = true) click to toggle source

Inspired by (read: “Stolen from”) Rails ActiveSupport::Inflector

# File lib/nidyx/core_ext/string.rb, line 3
def camelize(uppercase_first_letter = true)
  s = self
  if uppercase_first_letter
    s = s.sub(/^[a-z\d]*/) { $&.capitalize }
  else
    s = s.sub(/^([A-Z_]|\w)/) { $&.downcase }
  end
  s.gsub(/(?:_|(\/))([a-z\d]*)/i) { "#{$1}#{$2.capitalize}" }
end