Android字符串替换全部不起作用

时间:2014-11-26 07:41:54

标签: java android regex string replaceall

在Android应用程序中,我正在使用

String num = "10,000,000.00";
num.replaceAll("," , "");

预计:10000000.00

但我得到:10 000 000.00

适用于大多数设备。面对Galaxy Core,Galaxy Grand duos,Galaxy Young,Galaxy Note II和Xperia C等少数设备的问题

请帮助。

3 个答案:

答案 0 :(得分:3)

replaceAll 方法未修改 num 的值。相反,它正在创建一个新的String对象并返回它。所以你需要做的就是将replaceAll返回的值赋给 num 变量。

但我认为您需要替换方法来删除字符,而不是 replaceAll ,其中第一个参数是regex (在这种情况下不要混用正则表达式)

医生说:

replace(CharSequence target, CharSequence replacement)
Replaces each substring of this string that matches the literal target sequence with the specified literal replacement sequence.

所以这一切都达到了这个目的:

num = num.replace(",", "");

答案 1 :(得分:0)

public class DataData
{
    public static void main(String args[]) throws ParseException
    {

        String num = "10,000,000.00";
        num= num.replaceAll("," , "");
        System.out.println(num);///// output 10000000.00
    }
}

答案 2 :(得分:0)

使用以下java代码:

String num = "10,000,000.00";
num.replaceAll("," , "").replaceAll("\\s+" , "");

replaceAll方法用于正则表达式

尝试使用替换方法

 String num = "10,000,000.00";
 num.replace("," , "");