1 Pattern pattern = Pattern.compile("abc"); 2 Matcher matcher = pattern.matcher("abcd"); 3 if(matcher.matches()){ 4 System.out.println("matcher.matches() == true"); 5 }else{ 6 System.out.println("matcher.matches() == false"); 7 } 8 9 if(matcher.find()){ 10 System.out.println("matcher.find() == true"); 11 }else{ 12 System.out.println("matcher.find() == false"); 13 } 14 15 16 結果: 17 matcher.matches() == false 18 matcher.find() == true
1 Pattern pattern = Pattern.compile("abcd"); 2 Matcher matcher = pattern.matcher("abcd"); 3 if(matcher.matches()){ 4 System.out.println("matcher.matches() == true"); 5 }else{ 6 System.out.println("matcher.matches() == false"); 7 } 8 9 if(matcher.find()){ 10 System.out.println("matcher.find() == true"); 11 }else{ 12 System.out.println("matcher.find() == false"); 13 } 14 15 16 matcher.matches() == true 17 matcher.find() == false
结论:当正则完全匹配字符串,从头到尾正好匹配上字符串,matches()方法是true,find()方法为false
当正则只能匹配字符串中的部分内容,matches()方法是fasle ,find()方法是true