lib/engines/number.rb in rseg-0.1.1 vs lib/engines/number.rb in rseg-0.1.2

- old
+ new

@@ -1,21 +1,21 @@ -NUMBER_SYMBOLS = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', - '一', '二', '三', '四', '五', '六', '七', '八', '九', '十', - '零', '〇', '百', '千', '壹', '贰', '叁', '肆', '柒', '捌', - '玖', '拾', '之', '%', '¥', '分', '$', '.', '点', '第', '每'] -SUBUNIT_SYMBOLS = ['多', '公', '英', '厘', '毫', '微', '纳', '海', '平', '立', - '方', '摄', '华', '氏', '美', '日', '澳', '港', '台', '新', - '个', '百', '佰', '千', '仟', '万', '萬', '亿', '兆', '吉'] -UNIT_SYMBOLS = ['刻', '章', '回', '节', '名', '个', '届', '次', '集', '元', - '角', '例', '人', '斤', '克', '吨', '米', '里', '升', '码', - '尺', '寸', '杆', '顷', '亩', '磅', '镑', '桶', '度', '秒', - '分', '卡', '焦', '瓦', '匹', '圆', '币', '年', '月', '日', - '时', '秒', '点', '百', '佰', '仟', '千', '万', '萬', '亿', - '兆', '吉', '块', '半', '岁', '家', '所', '期', '场', '投', - '中', '辆', '只', '头'] - class Number < Engine + @@number_symbols = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', + '一', '二', '三', '四', '五', '六', '七', '八', '九', '十', + '零', '〇', '百', '千', '壹', '贰', '叁', '肆', '柒', '捌', + '玖', '拾', '之', '%', '¥', '分', '$', '.', '点', '第', '每'] + @@subunit_symbols = ['多', '公', '英', '厘', '毫', '微', '纳', '海', '平', '立', + '方', '摄', '华', '氏', '美', '日', '澳', '港', '台', '新', + '个', '百', '佰', '千', '仟', '万', '萬', '亿', '兆', '吉'] + @@unit_symbols = ['刻', '章', '回', '节', '名', '个', '届', '次', '集', '元', + '角', '例', '人', '斤', '克', '吨', '米', '里', '升', '码', + '尺', '寸', '杆', '顷', '亩', '磅', '镑', '桶', '度', '秒', + '分', '卡', '焦', '瓦', '匹', '圆', '币', '年', '月', '日', + '时', '秒', '点', '百', '佰', '仟', '千', '万', '萬', '亿', + '兆', '吉', '块', '半', '岁', '家', '所', '期', '场', '投', + '中', '辆', '只', '头'] + def initialize @word = '' @number = '' @unit = false @subunit = false @@ -24,21 +24,21 @@ def process(char) match = false word = nil - if (!@subunit || @unit) && NUMBER_SYMBOLS.include?(char) + if (!@subunit || @unit) && @@number_symbols.include?(char) @number << char match = true @unit = false @subunit = false - elsif (@number != '' || @unit) && SUBUNIT_SYMBOLS.include?(char) + elsif (@number != '' || @unit) && @@subunit_symbols.include?(char) @number << char match = true @subunit = true end - if (@number != '' || @subunit) && UNIT_SYMBOLS.include?(char) + if (@number != '' || @subunit) && @@unit_symbols.include?(char) @word << @number @word << char if !match @number = '' @unit = true match = true \ No newline at end of file