如何从java字符串中提取未知数字
我在模态中有一句话,例如“你的余额是29,2欧元”,我需要得到一个数字并存储它。但有一个数字是动态的。所以我不知道确切的数值。它可以是整数也可以是十进制。 然后我需要将这个值(已经存储的值)与下一页上的值进行比较
谢谢您的帮助:)
你可以在下面搜索框中键入要查询的问题!
我在模态中有一句话,例如“你的余额是29,2欧元”,我需要得到一个数字并存储它。但有一个数字是动态的。所以我不知道确切的数值。它可以是整数也可以是十进制。 然后我需要将这个值(已经存储的值)与下一页上的值进行比较
谢谢您的帮助:)
# 1 楼答案
欢迎来到SO:)
假设字符串是静态的,并且希望在其中找到一个值,我建议您使用Apache Commons' substringBetween。如果您不想添加额外的依赖项,那么您可以自己实现此方法,如下所示:
接下来的问题是,用逗号分隔小数不是Java的标准,因此
29,2
不会由Double.valueOf
或Double.parseDouble
解决。您需要:str.replaceAll(",", ".")
实现最终解决方案如下所示:
如前所述,在用点替换逗号后,可以将
findValue
的实现更改为使用substring
或regex
,将parseAsDouble
的实现更改为使用Double.parseDouble