7 回答

TA贡献1828条经验 获得超6个赞
replaceFirst方法第一个参数是正则表达式,小点需要转义
试试这个吧
System.out.println("1,234,567.89".replaceFirst("\.", ""));

TA贡献1798条经验 获得超7个赞
public String replace(CharSequence target, CharSequence replacement) { return Pattern.compile(target.toString(), Pattern.LITERAL).matcher( this).replaceAll(Matcher.quoteReplacement(replacement.toString())); }

TA贡献1719条经验 获得超6个赞
:D JAVA中的Replace、ReplaceFirst、Split 等方法 前面的第一个传的参数是正则表达式字符串,"."在正则表达式是是匹配任意字符,所以你用ReplaceFirst总只能替换第一个字符。另外还有很多正则表达式的符号得参考正则表达式的用法了

TA贡献1942条经验 获得超3个赞
google 正则表达式,元字符。
replace方法的参数是字符串,
replaceAll/replaceFirst的参数是正则表达式,需要注意对元字符的转义和贪婪匹配

TA贡献1856条经验 获得超5个赞
被楼上抢先一步了。。。楼主在查看API的时候要仔细一点,API里面说的很清楚,
String replaceAll(String regex, String replacement)
使用给定的 replacement 字符串替换此字符串匹配给定的正则表达式的每个子字符串。
String replaceFirst(String regex, String replacement)
使用给定的 replacement 字符串替换此字符串匹配给定的正则表达式的第一个子字符串。
:)
添加回答
举报