Module: CiteProc::Extensions::Underscore

Included in:
String
Defined in:
lib/citeproc/extensions.rb

Instance Method Summary collapse

Instance Method Details

#underscore(word) ⇒ Object



6
7
8
9
10
11
12
13
14
# File 'lib/citeproc/extensions.rb', line 6

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