java中的replaceAll,replace在java中什么意思,浅谈java中replace()和replaceAll()的区别

java中的replaceAll,replace在java中什么意思,浅谈java中replace()和replaceAll()的区别

本文主要介绍java中replace()和replaceAll()的区别,两者都是常用的替换字符的方法。感兴趣的朋友可以参考一下。

Replace和replaceAll是JAVA中替换字符的常用方法。他们的不同之处在于:

1)replace的参数是char和CharSequence,即可以支持字符的替换,同样支持字符串的替换(CharSequence的意思是字符串序列,也就是通俗英语中的字符串);

2)replaceAll的参数是regex,即基于规则表达式的替换,比如可以通过replaceAll('\\d ',' * ')用星号替换一个字符串的所有数字字符;

相同点:all replaceAll,即用指定的字符或字符串替换源字符串中的所有字符或字符串。如果只想替换第一个匹配项,可以使用replaceFirst()。这个方法也是基于正则表达式的,但是和replaceall()不同,只替换第一次出现的字符串;

另外,如果replaceAll()和replaceFirst()中使用的参数不是基于正则表达式,那么用replace()替换字符串的效果是一样的,即两者也都支持字符串操作;

再说明一点:替换操作后,源字符串的内容不变。

例子如下:

String src=新字符串(' ab 43 a 2c 43d ');

system . out . println(src . replace(' 3 ',' f ');=ab4f2c4fd。

system . out . println(src . replace(' 3 ',' f ');=ab4f2c4fd。

system . out . println(src . replace all(' \ \ d ',' f ');=abffafcffd。

system . out . println(src . replace all(' a ',' f ');=fb43fc23d。

system . out . println(src . replace first(' \ \ d,' f ');=abf32c43d

system . out . println(src . replace first(' 4 ',' h ');=abh32c43d。

如何将字符串中的“”替换为“\”:

字符串msgIn

字符串msgOut

msgOut=msgIn.replaceAll('\\\ ',' \ \ \ \ \ \ \ ');

原因:

在java中是转义字符,所以需要用两个来表示一个。比如system . out . println(' \ ');只打印了一个“”。但是,' \ '在正则表达式中也是转义符(replaceAll的参数是正则表达式),需要两个来表示一个。于是:\ \ \被java转换成\ \了,\ \被正则表达式转换成了。

相同的

代码:\\\\\\\\

Java: \\\\

正则表达式:\\

将字符串中的“/”替换为“\”的几种方法:

msgOut=msgIn.replaceAll('/',' \ \ \ ');

msgOut=msgIn.replace('/',' \ ');

msgOut=msgIn.replace('/',' \ \ ');

java中replace()和replaceAll()的区别通过例子来区分。希望这篇文章对你学习有帮助。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: