Chinese_number: 一个解析汉字数字的 ~rubygem

ruby-china 上有人问到怎么优雅地解析汉字数字,比如 二十五 解析成 25 。我第一反应是应该查一下有没有这样的 gem,因为是一个很普遍的需求,说不定已经有人实现了呢!

不过很可惜,不知道是不是我没有查到,还是真的没有,总之没有找到。所以我就写了一个这样的 gem — chinese_number

用法很简单:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
require 'chinese_number'

ChineseNumber.trans '今天二十万'
#=> "今天200000"

ChineseNumber.find "一年有十二个月三百六十五天"
#=> [{"一"=>1}, {"十二"=>12}, {"三百六十五"=>365}]

ChineseNumber.extract "今天二十晚"
#=> [20]

ChineseNumber::Parser.new.parse '二零一四'
#=> 2014

ChineseNumber::Parser.new.parse '一万三千'
#=> 13000

Comments