class String

Initial code taken from Facets gem by Rubyworks github.com/rubyworks/facets/blob/master/lib/core/facets/string/snakecase.rb

Public Instance Methods

snakecase_upcase() click to toggle source

Underscore a string such that camelcase, dashes and spaces are replaced by underscores.

# File lib/chgk_rating/utils/snakecase.rb, line 7
def snakecase_upcase
  split('::').last.
  gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2').
      gsub(/([a-z\d])([A-Z])/,'\1_\2').
      tr('-', '_').
      gsub(/\s/, '_').
      gsub(/__+/, '_').
      upcase
end