我正在尝试将写为单词的数值转换为整数。例如,"iPhone有230783个应用程序“将变成"iPhone as 230783个应用程序”。
在开始编码之前,我想知道是否存在用于此转换的函数/代码。
发布于 2009-07-03 03:26:31
有很多页面讨论了从数字到单词的转换。对于相反的方向,没有那么多。我能找到的最好的东西就是Ask Yahoo上的一些伪代码。关于一个很好的算法,请参阅http://answers.yahoo.com/question/index?qid=20090216103754AAONnDz:
嗯,总的来说,您正在做两件事:查找标记(可转换为数字的单词)和应用语法。简而言之,您正在为一种非常有限的语言构建一个解析器。
您需要的令牌包括:
力量:千、百万、十亿
百:百
十:二十,三十..。九十
一,二,三,..。九,
特别:十,十一,十二,..。十九
(去掉任何“和”,因为它们没有意义。将连字符拆分为两个标记。即六十五应按“六十”“五”处理)
对字符串进行标记化后,从右向左移动。
特别
十
单元
十个单元
单元百
单元百特别
单元一百一十
单位百个单位
单元110单元
(这假设此语法中不允许使用“1700”)
这将为您提供数字的最后三位数。
https://stackoverflow.com/questions/1077600
复制相似问题