大家可能都使用过replace来替换字符串,其实在大多数人的认知里,replace和replacAll的区别就是:一个是替换全部,一个是替换单个。。。
其实这个认知是错误的!本质上来说replace和replaceAll可以达到一样的效果,比如String s = "abca"; 这时如果使用s.replace("a","x")的话就表示将a变为x结果就是xbcx,然而使用replaceAll也可以达到这样的功能,结果是一样的,那么它们到底有什么区别呢?
replace:参数为target和replaceent,也就是替换的目标对象和新对象
replaceAll:参数为regex额replacement,第二个参数都一样,第一个参数表示正则表达式,也就是说replaceAll可以支持正则表达替换
replaceFirst:参数和replaceAll一致,唯一不同的是它执行匹配第一个结果,什么意思呢?来看一组例子
输出的结果为: