Class: String

Inherits:
Object
  • Object
show all
Defined in:
lib/topoisomerase/core_ext/string.rb

Overview

Overriding String functionality

Instance Method Summary collapse

Instance Method Details

#snakecaseString

Returns Convert CamelCase string to snake_case.

Returns:

  • (String)

    Convert CamelCase string to snake_case



4
5
6
7
8
9
10
11
12
13
# File 'lib/topoisomerase/core_ext/string.rb', line 4

def snakecase
  str = dup
  str.gsub! /::/, '/'
  str.gsub! /([A-Z]+)([A-Z][a-z])/, '\1_\2'
  str.gsub! /([a-z\d])([A-Z])/, '\1_\2'
  str.tr! '.', '_'
  str.tr! '-', '_'
  str.downcase!
  str
end