如何使用Groovy从字符串1,398.90中删除逗号

时间:2019-06-14 11:38:26

标签: groovy groovy-console

我无法使用groovy从字符串1,398.90中删除逗号

def liveprice ='1,398.90'; def liveprice2 = liveprice.replaceAll(',','')

2 个答案:

答案 0 :(得分:1)

我真的会避免使用带有数字的正则表达式

特别是看起来像钱的数字?

您可以使用DecimalFormat将String读入BigDecimal(以便保持精度)

import java.text.*

BigDecimal result = DecimalFormat.instance.with {
    parseBigDecimal = true
    parse('1,398.90')
}

答案 1 :(得分:0)

如@daggett所述,您的代码可以正常工作。除了正则表达式或替换以外的另一种替代方法:

'1,39,9,,,,.90'.split(",").join()
// outputs: 1399.90