聊聊这仨很常用的函数
我相信很多人也跟我一样也有个误区,错把replace
当成replaceFirst
,把replaceAll
当成replace
实际上,replace
函数会替换掉满足字符串中所有出现过第一个参数中的值的地方
例如:
String string = "ruben love strawberry";
String replace = string.replace("r", "");
// uben love stawbey
如果我们只需要替换第一处,则需要使用replaceFirst
例如:
String string = "ruben love strawberry";
String replaceFirst = string.replaceFirst("[A-Za-z0-9]", "");
// uben love strawberry
并且replaceFirst
支持正则表达式,replace
则不支持
而replaceAll
则是用于需要替换所有满足正则表达式匹配的场景
String string = "ruben love strawberry";
String replaceAll = string.replaceAll("[A-Za-z0-9]", "");
//
这里因为全部匹配,所以被替换成空串了
因此注意这种情况:
String string = "D:\\Directory\\directory\\file.suffix";
String replace = string.replace("\\D", "");
// D:irectory\directory\file.suffix
String replaceFirst = string.replaceFirst("\\D", "");
// :\Directory\directory\file.suffix
String replaceAll = string.replaceAll("\\D", "");
//
就是我们需要替换的字符中如果出现了刚好满足正则的情况下。。。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有