Sha256: e09049a99bedcdb39f25e494fb3a08a321f7db17f66c0164e8e0d2e3111e9ea6

Contents?: true

Size: 185 Bytes

Versions: 9

Compression:

Stored size: 185 Bytes

Contents

class String
  def to_snake_case
    gsub(/::/, '/')
      .gsub(/([A-Z]+)([A-Z][a-z])/, '\1_\2')
      .gsub(/([a-z\d])([A-Z])/, '\1_\2')
      .tr('-', '_')
      .downcase
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
page_magic-1.0.0.alpha13 lib/ext/string.rb
page_magic-1.0.0.alpha12 lib/ext/string.rb
page_magic-1.0.0.alpha11 lib/ext/string.rb
page_magic-1.0.0.alpha10 lib/ext/string.rb
page_magic-1.0.0.alpha9 lib/ext/string.rb
page_magic-1.0.0.alpha8 lib/ext/string.rb
page_magic-1.0.0.alpha7 lib/ext/string.rb
page_magic-1.0.0.alpha6 lib/ext/string.rb
page_magic-1.0.0.alpha5 lib/ext/string.rb