class StringExtra
Avoid the monkey patching of String for underscore/titleize/humanize
Public Class Methods
new(str = 'no_name')
click to toggle source
# File lib/ruby-processing/helpers/string_extra.rb, line 7 def initialize(str = 'no_name') @string = (str.length > 60) ? 'long_name' : str end
Public Instance Methods
humanize()
click to toggle source
# File lib/ruby-processing/helpers/string_extra.rb, line 22 def humanize gsub(/_id$/, '').gsub(/_/, ' ').capitalize end
titleize()
click to toggle source
# File lib/ruby-processing/helpers/string_extra.rb, line 11 def titleize gsub(/::/, '/') .gsub(/([A-Z]+)([A-Z][a-z])/, '\1_\2') .gsub(/([a-z\d])([A-Z])/, '\1_\2') .tr('-', '_') .downcase .gsub(/_id$/, '') .gsub(/_/, ' ').capitalize .gsub(/\b([a-z])/) { Regexp.last_match[1].capitalize } end
underscore()
click to toggle source
# File lib/ruby-processing/helpers/string_extra.rb, line 26 def underscore gsub(/::/, '/') .gsub(/([A-Z]+)([A-Z][a-z])/, '\1_\2') .gsub(/([a-z\d])([A-Z])/, '\1_\2') .tr('-', '_') .downcase end