Pattern p = Pattern.compile(".s");
Matcher m = p.matcher("as");
boolean b = m.matches();
和
boolean b3 = Pattern.matches(".s", "as");
我想知道这两个声明有什么区别?
> mathches()
是Matcher类方法怎样才能调用它?
答案 0 :(得分:3)
查看Pattern.matches
的实现:
public static boolean matches(String var0, CharSequence var1) {
Pattern var2 = compile(var0);
Matcher var3 = var2.matcher(var1);
return var3.matches();
}
并且您看到后者只是更详细的第一个片段的便捷方法。
答案 1 :(得分:3)
matches()
是static
类中的Pattern
方法,它在matches()
中调用Matcher
方法。这是来源code:
public static boolean matches(String regex, CharSequence input) {
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(input);
return m.matches();
}