假如有个字符串为"fatcatfatcatfat",正则为“cat”
当调用appendReplacement(sb, "dog")时appendReplacement方法都会把匹配到的内容替换为dog,并把匹配到字符串的前面几个字符串+dog送给sb里,所以第一次输出fatdog
当第二次调用输出fatdogfatdog
// 创建正则表达式 String regex = "cat"; // 创建字符串 String input = "fatcatfatcatfat"; // 创建对象pattern 对象 Pattern pattern = Pattern.compile(regex); // 创建匹配match Matcher matcher = pattern.matcher(input); // 记录结果 StringBuffer sb = new StringBuffer(); // 第一次调用appendReplacement方法 // 每次调用appendReplacement方法都会把匹配到的内容替换为dog,并把匹配到字符串的前面几个字符串+dog送给sb里,所以第一次输出fatdog matcher.find(); matcher.appendReplacement(sb, "dog"); // 第二次调用appendReplacement方法 // 每次调用appendReplacement方法都会把匹配到的内容替换为dog,并把匹配到字符串的前面几个字符串+dog送给sb里,所以第二次输出fatdogfatdog matcher.find(); matcher.appendReplacement(sb, "dog"); // 再调用一次appendTail方法,会把匹配工作后剩余的字符串的加到sb中,所以第二次输出fatdogfatdogfat matcher.appendTail(sb); System.out.println(sb.toString());
public class test { public static void main(String[] args) { &...
java一个类可以有多个构造方法,根据传参类型和个数来匹配执行哪个构造方法。public class Member { public Member(){  ...
在java中字符串属于对象,刚开始我就疑惑为什么int char等类型都是小写,结果String是大写,java太反人类,后来才知道String是对象。(1).java创建字符串String text = "net"; String tex...
java stringBuffer(1).stringBuffer和stringBuilder区别stringBuffer是线程安全的,stringBuilder速度更快(2).简单的stringBuffer例子StringBuffer sBuffer = new&nb...
(4).java lookingAt匹配字符串和java matches匹配字符串lookingAt不要求整个字符串全匹配,例如me和me_you都是匹配的,但是lookingAt从第一个字符串开始匹配,匹配失败了也不会继续匹配,意味着me和you_me是无法匹配的matches匹配字符串要求全部匹...