String对象中的replace和replaceAll的区别?
Posted constxiong
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了String对象中的replace和replaceAll的区别?相关的知识,希望对你有一定的参考价值。
replace方法:支持字符和字符串的替换。
public String replace(char oldChar, char newChar) public String replace(CharSequence target, CharSequence replacement)
replaceAll方法:基于正则表达式的字符串替换。
public String replaceAll(String regex, String replacement)
测试代码:
String str = "Hello Java. Java is a language."; System.out.println(str.replace("Java.", "c++"));//打印 Hello c++ Java is a language. System.out.println(str.replaceAll("Java.", "c++"));//打印 Hello c++ c++is a language.
打印结果:
Hello c++ Java is a language. Hello c++ c++is a language.
ps:曾一度认为 replace() 是首个匹配的 字符 或 字符串 替换,replaceAll() 是目标字符串中全部匹配的字符 或 字符串替换,从结果来看这个认知是错误的。
- Java 自学指南
- Java 面试题汇总PC端浏览【点这里】
- Java知识图谱
- Java 面试题汇总小程序浏览,扫二维码
所有资源资源汇总于公众号
以上是关于String对象中的replace和replaceAll的区别?的主要内容,如果未能解决你的问题,请参考以下文章
thymeleaf 中 String 对象的 #strings.replace() 实用程序方法是不是替换了提供的字符串中的所有匹配项?
java中的string类中内容一旦被初始化就不能改变为啥还有replace方法呢?