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



9
10
11
# File 'lib/string_manipulator.rb', line 9

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



5
6
7
# File 'lib/string_manipulator.rb', line 5

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