今天早上看视频,刚接触到正则表达式
在看api的时候,有一段这样的程序:
Pattern pa = Pattern.compile("a*b");
Matcher m = pa.matcher("aaaaab");
System.out.println(m.matches());
System.out.println("aaaaab".matches("a*b"));
System.out.println(Pattern.matches("aaaaab","a*b"));
api上说第五句和第一至三句等效,但是我测试的结果却不一样:
true
true
false为什么啊?
在看api的时候,有一段这样的程序:
Pattern pa = Pattern.compile("a*b");
Matcher m = pa.matcher("aaaaab");
System.out.println(m.matches());
System.out.println("aaaaab".matches("a*b"));
System.out.println(Pattern.matches("aaaaab","a*b"));
api上说第五句和第一至三句等效,但是我测试的结果却不一样:
true
true
false为什么啊?
Pattern.matches("a*b", "aaaaab");
你顺序都反了啊 前面一个参数是正则 后面一个是你要匹配的字符串 你把aaaaab作为正则 你说a*b匹配不也!