正则表达式整理

时间:2021-10-07 16:23:25

今天老师上课交了正则的一些表达式,正则跟我们生活息息相关,比如扣扣登录和手机号码或者一些其他的登录系统,我们要如何判定我们的输入有错或是没错,正则就会教我们如何简单快捷的做到这一点。
这是我总结的今天学到的知识点,分享给大家的一些基础正则。



 package review; public class Demo1 { public static void main(String[] args){ System.out.println("a".matches(".")); //. 任何字符(与行结束符可能匹配也可能不匹配) System.out.println("1".matches("\\d")); // \d 数字:[0-9] System.out.println("a".matches("\\D")); // \D 非数字: [^0-9] System.out.println("a".matches("\\s")); // \s 空白字符:[ \t\n\x0B\f\r] System.out.println("a".matches("\\S")); // \S 非空白字符:[^\s] System.out.println(".".matches("\\W")); // \W 非单词字符:[^\w] System.out.println("a".matches("\\w")); // \w 单词字符:[a-zA-Z_0-9] System.out.println("---------预定义字符类--------------"); System.out.println("".matches("b?")); // X? X,一次或一次也没有 System.out.println("bbbbbb".matches("b*")); // X* X,零次或多次 System.out.println("aaaaaaaaaaa".matches("a+")); // X+ X,一次或多次 System.out.println("aa".matches("a{2}")); // X{n} X,恰好 n 次 System.out.println("aa".matches("a{2,}")); // X{n,} X,至少 n 次 System.out.println("aa".matches("a{2,3}")); // X{n,m} X,至少 n 次,但是不超过 m 次 System.out.println("-------- Greedy 数量词------------"); System.out.println("a".matches("[abc]")); // [abc] a、b 或 c(简单类) System.out.println("a".matches("[^skjdk]")); // [^abc] 任何字符,除了 a、b 或 c(否定) System.out.println("a".matches("[a-zA-Z]")); // [a-zA-Z] a 到 z 或 A 到 Z,两头的字母包括在内(范围) System.out.println("c".matches("[a-u[f-z]]")); // [a-d[m-p]] a 到 d 或 m 到 p:[a-dm-p](并集) System.out.println("c".matches("[a-d&&[cd]]")); // [a-z&&[def]] d、e 或 f(交集) System.out.println("f".matches("[a-z&&[^e-g]]")); // [a-z&&[^m-p]] a 到 z,而非 m 到 p:[a-lq-z](减去) System.out.println("a".matches("[a-z&&[^eg]]")); // [a-z&&[^bc]] a 到 z,除了 b 和 c:[ad-z](减去) System.out.println("------字符类------"); } }