Java 检查字符串是否为数字
我知道您可以通过执行Java 检查字符串是否为数字,java,android,string,int,Java,Android,String,Int,我知道您可以通过执行integer.parseInt(“1234”)来检查字符串是否为整数 但我要做的是将文本数字链接到整数。 i、 e “一”==1 “两个”==2 “三”==3 “二十”==20 是否有一些库我可以用来做这件事,或者我必须手动编程 我之所以想这样做,是因为我有一个带语音识别的android应用程序。 然后用户可以计数。这个数字显示在屏幕上 编辑 经过一些实验,我发现我使用的SpeechRecognitor类会自动将数字解析为实际数字…我不确定是否有用于此的库,但这是一个很
integer.parseInt(“1234”)来检查字符串是否为整数代码>
但我要做的是将文本数字链接到整数。
i、 e
- “一”==1
- “两个”==2
- “三”==3
- “二十”==20
是否有一些库我可以用来做这件事,或者我必须手动编程
我之所以想这样做,是因为我有一个带语音识别的android应用程序。
然后用户可以计数。这个数字显示在屏幕上
编辑
经过一些实验,我发现我使用的SpeechRecognitor类会自动将数字解析为实际数字…我不确定是否有用于此的库,但这是一个很好的例子。据我所知,没有用于此的库,但您可以这样想
创建三种类型的令牌
一、二、三。。。。。。。。。。。。。。。。。。。。九
b.十一到十九、二十、三十。。。。。。。。。。。。九十
c.100000。。。。。。。。更大的价值
现在解析输入字符串并与标记匹配。就为了一个基本的想法,你可以这样想
第一步。从stirng标记器创建标记
第二步。匹配最右边的字符串并与标记匹配
第三步。从右侧逐个匹配字符串,并与令牌和
算计
例如1053
设和=0
第一个字符串=三,因此总和+=3
第二个字符串=50,因此总和+=50
第三个字符串=100,所以需要将第四个字符串乘以100,然后加上so sum+=f*100。。等等
这只是一个基本的想法。因此,在正确规划后,您可以完美地实现它您可以使用枚举模式来完成此任务。请记住,这将带来严重的i18n问题。类似问题:@BYTERIDER感谢您的提醒,但是,关于该特定问题的答案还不够。我不想更多地关注数字1-100。不是关于“一百七十一”的问题。