题目
将类似于”二十五万五百亿三千零八万一千零三十五”的中文数字转换成对应的阿拉伯数字
分析
一些基本假设:
- 中文数字中,字符可以分为数字和单位(或者叫数量级),比如一、二、三这种是数字,十、百、千、万这种是单位。
- 必须以数字开头,单位不能作为开头,但是有个例外情况,
十
虽然是个单位,但是 十
可以作为开头,比如十六万。
零
的时候可以略过
corner case:
- 中文表示习惯中,二放在开头的时候,会用
两
十
既是单位又是数字。
解法1
解法2
思路
按照单位,把字符串从左到右切分。
参考资料
- 中文数字和阿拉伯数字的转换 | Haibo Yu
- 把中文表示的数字转成阿拉伯数字 - java_衣衫破旧 歌声温柔-CSDN博客