JAVA中string.replace和string.replaceAll的区别及用法

 我来答
衣仲城昆卉
2019-07-08 · TA获得超过993个赞
知道小有建树答主
回答量:1774
采纳率:100%
帮助的人:8.2万
展开全部
1、替换方式不同
【public
String
replace(
)】
是通过用
newChar
替换此字符串中出现的所有
oldChar
而生成的。
【public
String
replaceAll(
)】
使用给定的
replacement
字符串替换此字符串匹配给定的正则表达式的每个子字符串。
2、参数不同
【replace】的参数是char和CharSequence。可以支持字符的替换,也支持字符串的替换。
【replaceAll】的参数是regex,regex表示是正则表达式。即基于正则表达式的替换。
用法范例一:
public
static
void
main(String[]
arg)
throws
OgnlException
{
String
s
=”sdf\\a\\aa”;
//把s中的反斜杠\
替换为\\
System.out.println(s);
System.out.println(s.replaceAll(“\\\\”,
“\\\\\\\\”));
System.out.println(s.replace(“\\”,
“\\\\”));
}
用法范例二:
String
str
=
"wel2come3Souhe";
String
str1
=
str.replace("e",
"E");
String
str3
=
str.replace('e',
'E');
System.out.println("replace字符串=="
+
str1);
System.out.println("replace字符=="+str3);
String
str2
=
str.replaceAll("\\d",
"a");//将数字替换a
System.out.println("replaceAll=="
+
str2);
输出结果:
replace字符串==wEl2comE3SouhE
replace字符==wEl2comE3SouhE
replaceAll==welacomeaSouhe
扩展资料
Java中的String类
1、String类是final类,因此String类不能被继承。
2、String的成员方法都默认为final方法。
3、被final修饰的类是不允许被继承的,并且该类中的成员方法都默认为final方法。
4、String类其实是通过char数组来保存字符串的。
5、String对象一旦被创建就是固定不变的。
6、对String对象的任何改变都不影响到原对象,相关的任何change操作都会生成新的对象。
参考资料:搜狗百科-Java
参考资料:搜狗百科-string
汪赫0fY
2015-06-08 · TA获得超过184个赞
知道小有建树答主
回答量:67
采纳率:100%
帮助的人:48万
展开全部
String str1 = "123123";
str1 = str1.replace("1", "0");//str = 023123
String str2 = "123123";
str2 = str2.replaceAll("1", "0");//str = 023023

就是说replace 只替换字符串找到的第一个替换字符
而replaceAll 替换找到的所有字符。
回答完毕,请采纳
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
指尖点滴bV
2015-06-08 · TA获得超过626个赞
知道小有建树答主
回答量:1258
采纳率:71%
帮助的人:255万
展开全部
replace只是替换最先找到的一个。replaceall替换所有。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式