浅谈java中replace()和replaceAll()的区别
replace和replaceAll是JAVA中常用的替换字符的方法,它们的区别是:
1)replace的参数是char和CharSequence,即可以支持字符的替换,也支持字符串的替换(CharSequence即字符串序列的意思,说白了也就是字符串);
2)replaceAll的参数是regex,即基于规则表达式的替换,比如,可以通过replaceAll("\\d", "*")把一个字符串所有的数字字符都换成星号;
相同点:都是全部替换,即把源字符串中的某一字符或字符串全部换成指定的字符或字符串,如果只想替换第一次出现的,可以使用replaceFirst(),这个方法也是基于规则表达式的替换,但与replaceAll()不同的是,只替换第一次出现的字符串;
另外,如果replaceAll()和replaceFirst()所用的参数据不是基于规则表达式的,则与replace()替换字符串的效果是一样的,即这两者也支持字符串的操作;
还有一点注意::执行了替换操作后,源字符串的内容是没有发生改变的。
举例如下:
String src = new String("ab43a2c43d"); System.out.println(src.replace("3","f"));=>ab4f2c4fd. System.out.println(src.replace('3','f'));=>ab4f2c4fd. System.out.println(src.replaceAll("\\d","f"));=>abffafcffd. System.out.println(src.replaceAll("a","f"));=>fb43fc23d. System.out.println(src.replaceFirst("\\d,"f"));=>abf32c43d System.out.println(src.replaceFirst("4","h"));=>abh32c43d.
如何将字符串中的"\"替换成"\\":
String msgIn; String msgOut; msgOut=msgIn.replaceAll("\\\\","\\\\\\\\");
原因:
'\'在java中是一个转义字符,所以需要用两个代表一个。例如System.out.println( "\\" ) ;只打印出一个"\"。但是'\'也是正则表达式中的转义字符(replaceAll 的参数就是正则表达式),需要用两个代表一个。所以:\\\\被java转换成\\,\\又被正则表达式转换成\。
同样
CODE: \\\\\\\\
Java: \\\\
Regex: \\
将字符串中的'/'替换成'\'的几种方式:
msgOut= msgIn.replaceAll("/", "\\\\"); msgOut= msgIn.replace("/", "\\"); msgOut= msgIn.replace('/', '\\');
通过实例区分了java中replace()和replaceAll()的不同点,希望本文对大家学习有所帮助。
- javascript中使用replaceAll()函数实现字符替换的方法
- Javascript中正则表达式的全局匹配模式分析
- Javascript中使用exec进行正则表达式全局匹配时的注意事项
- JavaScript实现的字符串replaceAll函数代码分享
- javascript实现全局匹配并替换的方法
- java中replaceAll替换圆括号实例代码
- Java中replace与replaceAll的区别与测试
- java字符串的替换replace、replaceAll、replaceFirst的区别说明
- Java replaceAll()方法报错Illegal group reference的解决办法
- String.replaceAll方法详析(正则妙用)
- 浅谈Java中replace与replaceAll区别
- Java中replace、replaceAll和replaceFirst函数的用法小结
- jQuery中replaceAll()方法用法实例
- js使用正则实现ReplaceAll全部替换的方法
- js字符串替换所有的指定字符或文字(推荐replaceAll方法)
- JS中实现replaceAll的方法(实例代码)
- js replace 与replaceall实例用法详解
- Flex 字符串ReplaceAll使用说明
- JavaScript中使用replace结合正则实现replaceAll的效果
相关文章
使用springboot跳转到指定页面和(重定向,请求转发的实例)
这篇文章主要介绍了使用springboot跳转到指定页面和(重定向,请求转发的实例),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-12-12SpringBoot Controller Post接口单元测试示例
今天小编就为大家分享一篇关于SpringBoot Controller Post接口单元测试示例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧2018-12-12关于@PostConstruct、afterPropertiesSet和init-method的执行顺序
这篇文章主要介绍了关于@PostConstruct、afterPropertiesSet和init-method的执行顺序,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-09-09
最新评论