module Wasabi::CoreExt::String

Public Class Methods

snakecase(str) click to toggle source
# File lib/wasabi/core_ext/string.rb, line 7
def self.snakecase(str)
  str = str.dup
  str.gsub!(/::/, '/')
  str.gsub!(/([A-Z]+)([A-Z][a-z])/, '\1_\2')
  str.gsub!(/([a-z\d])([A-Z])/, '\1_\2')
  str.tr!(".", "_")
  str.tr!("-", "_")
  str.downcase!
  str
end