Ailln/cn2an

口语中文数字

Opened this issue · 4 comments

Ailln commented

1599654744819
这个格式为啥不正常呢,是不是可以升级支持下类似的啊

Originally posted by @mengxifeng in #10 (comment)

Ailln commented

已经适配了 四千五 这样的口语表示,对于 六千九百七 这样的还是第一次碰到,因为它在口语中也不常见。

如下表示数的范围,可否实现,或者有什么思路吗?

十万八万
十万二十万
一万两万
百八十万
三五万
一千两千
三五十万
十几二十万
千八百万
万儿八千
五万十万
千儿八百
百十万
三两万
一二十万
三百五百
三五百万
二三十万
几万块
三两千
五千一万
两万三万
几万十几万
百十来万
十来万
三万两万
八万十万
一两万
几千一万
一百两百

Ailln commented

我觉得可以考虑把它们分一下类,比如:

  1. class 1

    • 十万八万
    • 十万二十万
    • 五千一万
  2. class 2

    • 万儿八千
    • 千儿八百
  3. class3

    • 百十来万
    • 十来万
  4. class4

    • 一二十万
    • 三五百万
    • 二三十万
  5. class5

    • 几万块

然后根据不同的类别,编写固定的解析方法。

Beants commented

目前已支持六千九百七这样的表述 #58

import cn2an
cn2an.cn2an("六千九百七", mode="smart")
>>> 6970