Module: StringManipulator

Defined in:
lib/string_manipulator.rb

Defined Under Namespace

Classes: Error

Class Method Summary collapse

Class Method Details

.to_camel_case(str) ⇒ Object



11
12
13
# File 'lib/string_manipulator.rb', line 11

def self.to_camel_case(str)
  str.split(/[\s_-]+/).map(&:capitalize).join.tap { |s| s[0] = s[0].downcase }
end

.to_snake_case(str) ⇒ Object



7
8
9
# File 'lib/string_manipulator.rb', line 7

def self.to_snake_case(str)
  str.gsub(/([A-Z\d]+)([A-Z][a-z\d]*)|\B([a-z\d])(?=[A-Z\d])|\W+/, '_').squeeze('_').sub(/^_|_$/, '').downcase
end