module ToCardinal
Constants
- EXPLICITS
- EXPLICIT_MATCHES
- ORDINAL
- REGULARS
- TENS
- TENS_MATCH
- VERSION
Public Class Methods
cardinalize(str)
click to toggle source
# File lib/to_cardinal/cardinalize.rb, line 46 def self.cardinalize(str) str.downcase! ordinal = str[ORDINAL, 1] explicit_matches = EXPLICIT_MATCHES[str] regular_match = str[/^(.+)teenth$/, 1] return ordinal.to_i if ordinal return explicit_matches if explicit_matches return 10 + REGULARS[regular_match] if regular_match if tens = str[TENS_MATCH, 1] sum = TENS[tens] str.sub! "#{tens}-", '' EXPLICIT_MATCHES.has_key?(str) ? sum + EXPLICIT_MATCHES[str] : nil end end
Public Instance Methods
to_cardinal()
click to toggle source
# File lib/to_cardinal/cardinalize.rb, line 64 def to_cardinal ToCardinal.cardinalize self end