replace、replaceAll、replaceFirst的区别
最佳答案 问答题库458位专家为你答疑解惑
replace、replaceAll和replaceFirst是Java中常用的替换字符的方法,它们的方法定义是:
replace(CharSequence target, CharSequence replacement) ,用replacement替换所有的target,两个参数都是字符串。
replaceAll(String regex, String replacement) ,用replacement替换所有的regex匹配项,regex很明显是个正则表达式,replacement是字符串。
replaceFirst(String regex, String replacement) ,基本和replaceAll相同,区别是只替换第一个匹配项。
可以看到,其中replaceAll以及replaceFirst是和正则表达式有关的,而replace和正则表达式无关。
replaceAll和replaceFirst的区别主要是替换的内容不同,replaceAll是替换所有匹配的字符,而replaceFirst()仅替换第一次出现的字符
实例
1.replace()替换字符串
public class Test {public static void main(String args[]) {System.out.println("abac".replace("a", "-a")); // -ab-ac}
}
运行结果:
-ab-ac
2.replaceAll() 替换符合正则的所有文字
import java.util.regex.Matcher;
import java.util.regex.Pattern;public class Test {public static void main(String args[]) {// 文字替换(全部)Pattern pattern = Pattern.compile("正则表达式");Matcher matcher = pattern.matcher("正则表达式 Hello World,正则表达式 Hello World");// 替换所有符合正则的数据System.out.println(matcher.replaceAll("Java"));}
}
运行结果:
Java Hello World,Java Hello World
3.replaceFirst() 替换第一个符合正则的数据
import java.util.regex.Matcher;import java.util.regex.Pattern;public class Test {public static void main(String args[]) {// 文字替换(首次出现字符)Pattern pattern = Pattern.compile("正则表达式");Matcher matcher = pattern.matcher("正则表达式 Hello World,正则表达式 Hello World");// 替换第一个符合正则的数据System.out.println(matcher.replaceFirst("Java"));}}
运行结果:
Java Hello World,正则表达式 Hello World
部分内容转载自: replaceFirst、replaceAll、replace区别_replaceall replace-CSDN博客
99%的人还看了
相似问题
猜你感兴趣
版权申明
本文"replace、replaceAll、replaceFirst的区别":http://eshow365.cn/6-20182-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!
- 上一篇: 20-数据结构-内部排序-插入排序
- 下一篇: UDP通信-广播、组播