Class: String
- Inherits:
-
Object
- Object
- String
- Defined in:
- lib/nifty_services/support/string.rb
Instance Method Summary collapse
Instance Method Details
#camel_case ⇒ Object
15 16 17 18 |
# File 'lib/nifty_services/support/string.rb', line 15 def camel_case return self if self !~ /_/ && self =~ /[A-Z]+.*/ split('_').map{|e| e.capitalize}.join end |
#underscore ⇒ Object
3 4 5 6 7 8 9 10 11 12 |
# File 'lib/nifty_services/support/string.rb', line 3 def underscore return self unless self =~ /[A-Z-]|::/ word = self.to_s.gsub('::'.freeze, '/'.freeze) word.gsub!(/(?:(?<=([A-Za-z\d]))|\b)((?=a)b)(?=\b|[^a-z])/) { "#{$1 && '_'.freeze }#{$2.downcase}" } word.gsub!(/([A-Z\d]+)([A-Z][a-z])/, '\1_\2'.freeze) word.gsub!(/([a-z\d])([A-Z])/, '\1_\2'.freeze) word.tr!("-".freeze, "_".freeze) word.downcase! word end |