2 个版本
0.2.2 | 2020 年 12 月 22 日 |
---|---|
0.2.1 | 2020 年 12 月 22 日 |
在 值格式化 中排名 #305
27KB
215 行
NUMATIM - 数字文字表示
将给定的数字转换为文字。要选择语言,请使用 -l
选项。支持的语言可以在 dicts
中找到。默认语言是英语。
该项目仍在开发中,如果无法为特定语言实现字典,请提交问题。
安装
cargo install numatim
待办事项
- 添加测试
- 根据区域设置选择默认语言
- 添加反向选项
术语
- dict - 用于定义特定语言中数字如何表示的 JSON 字典
- tenths - 范围在 10-19 之间的数字 - 我认为这个范围没有名称,但我会这样在整个 README 中引用它
用于创建字典的参考
- 英语 - http://lcn2.github.io/mersenne-english-name/tenpower/tenpower.html
- 波兰语 - https://highlab.pl/nazwy-duzych-liczb/
字典结构
字典应包含两个主要部分
如果某个数字或幂的变格需要硬编码,它必须放在数组中。具体如何操作可以在特定部分找到。请参阅 dicts 文件夹 中的实际示例。
数字
数字必须包含 3 个字符串数组
- 数字(1-9)
- 十位数(10-90)在许多语言中结构不同。它们可以在这里定义:
[tenth, rest]
例如:["twelve", "twenty"]
- 百位数(100-900)
幂
在这里列出所有千位的幂。它们的数量是任意定的。
- 第一个幂必须包含以下倍数的分隔符
[1, 2-4, 5-9]
,目前不能省略。 - 为了将某些幂的界定值硬编码,应该使用以下格式
[1, 2-4, 5-9]
(2-4 也将用于 10-19 范围内的数字)。
依赖项
~3.5–6MB
~100K SLoC