Method: String#_to_numeric
- Defined in:
- lib/ultrasphinx/core_extensions.rb
#_to_numeric ⇒ Object
XXX Not used enough to justify such a strange abstraction
95 96 97 98 99 100 101 102 103 104 105 106 107 |
# File 'lib/ultrasphinx/core_extensions.rb', line 95 def _to_numeric zeroless = self.squeeze(" ").strip.sub(/^0+(\d)/, '\1') zeroless.sub!(/(\...*?)0+$/, '\1') if zeroless.to_i.to_s == zeroless zeroless.to_i elsif zeroless.to_f.to_s == zeroless zeroless.to_f elsif date = Chronic.parse(self.gsub(/(\d)([^\d\:\s])/, '\1 \2')) # Improve Chronic's flexibility a little date.to_i else raise Ultrasphinx::UsageError, "#{self.inspect} could not be coerced into a numeric value" end end |