class String
Public Instance Methods
camelcase()
click to toggle source
# File lib/morpheus/ext/string.rb, line 48 def camelcase value = self.underscore.gsub(/\_([a-z])/) do $1.upcase end value = value[0, 1].downcase + value[1..-1] value end
dasherize()
click to toggle source
# File lib/morpheus/ext/string.rb, line 62 def dasherize self.underscore.gsub("_", "-") end
pluralize()
click to toggle source
# File lib/morpheus/ext/string.rb, line 3 def pluralize # hacky version of this until we want to depend on ActiveSupport value = self.dup if value == "" value elsif value[-1].chr == "y" value[0..-2] + "ies" elsif value[-1].chr == "s" if value[-2..-1] == "ss" value + "es" else value end else value + "s" end end
singularize()
click to toggle source
# File lib/morpheus/ext/string.rb, line 21 def singularize # hacky version of this until we want to depend on ActiveSupport value = self.dup if value == "" value elsif value.size > 3 && value[-3..-1] == "ies" value[0..-4] + "y" elsif value.size > 2 && value[-3..-1] == "ses" value[0..-2] elsif value[-1] == "s" value[0..-2] else value end end
titleize()
click to toggle source
# File lib/morpheus/ext/string.rb, line 58 def titleize self.underscore.split("_").map(&:capitalize).join(" ") end
underscore()
click to toggle source
# File lib/morpheus/ext/string.rb, line 37 def underscore value = self.dup value.gsub!(/::/, '/') value.gsub!(/([A-Z]+)([A-Z][a-z])/,'\1_\2') value.gsub!(/([a-z\d])([A-Z])/,'\1_\2') value.tr!("-", "_") value.tr!(" ", "_") value.downcase! value end
upcamelcase()
click to toggle source
# File lib/morpheus/ext/string.rb, line 54 def upcamelcase self.camelcase.capitalize end