日期:2014-05-20  浏览次数:20663 次

关于正则表达式的一个具体困惑
为什么结果显示为两次sch的匹配都未false呢。谢谢大家帮忙。
import java.util.regex.Matcher;
import java.util.regex.Pattern;


public class Test {

public static void main(String[] args) {
System.out.println("abc".matches("..."));
System.out.println("a213720b".replaceAll("\\d", "-"));

Pattern p = Pattern.compile("[a-z](3)"); //**********************
Matcher m = p.matcher("sch"); //**********************
p(m.matches());//**********************
p("sch".matches("[a-z](3)"));//**********************


}

public static void p(Object o) {
System.out.println(o);
}

}


------解决方案--------------------
Java code
System.out.println("sch".matches("[a-z]{3}"));
        System.out.println("s3".matches("[a-z](3)"));