2017-06-14 32 views
-4

我想将GBP 29.15*转换为29.15我想将字符串转换为浮点数

任何人都可以请帮忙吗?

我已经尝试解析为整数/浮点数,子串等,但得到一个错误。

+0

你需要[编辑]你的问题,包括你尝试过什么错误你有, – azurefrog

+3

的可能的复制[Java的String删除所有非数字字符(https://开头计算器。 com/questions/10372862/java-string-remove-all-non-numeric-characters) – Jeutnarg

+0

使用'subString'方法获取包含29.15的字符串部分,然后解析它。 'Float.parseFloat(“GBP 29.15 *”.subString(4,9))'' –

回答

1

试试这个:

float f = Float.valueOf("GBP 29.15*".replaceAll("[^\\d.]+|\\.(?!\\d)", ""));

它会删除所有非数字字符,然后找到浮点值。

参见:How to get float value from string