1 正则表达式
public boolean matches(String regex): 判断是否匹配正则表达式,匹配返回true,不匹配返回false。
字符类(默认匹配一个字符)
[abc] 只能是a, b, 或c
[^abc] 除了a, b, c之外的任何字符
[a-zA-Z] a到z A到Z,包括(范围)
[a-d[m-p]] a到d,或m到p
[a-z&&[def]] a-z和def的交集。为:d,e,f
[a-z&&[^bc]] a到z和非bc的交集:(等同于[ad-z])
[a-z&&[^m-p]] a到z和除了m到p的交集:([a-lq-z])
预定义的字符类(默认匹配一个字符)
. 任何字符
\d 一个数字: [0-9]
\D 非数字: [^0-9]
\s 一个空白字符: [ \t\n\x0B\f\r]
\S 非空白字符: [^\s]
\w [a-zA-Z_0-9] 英文、数字、下划线
\W [^\w] 一个非单词字符
贪婪的量词(配合匹配多个字符)
X? X , 一次或根本不
X* X,零次或多次
X+ X , 一次或多次
X {n} X,正好n次
X {n, } X,至少n次
X {n,m} X,至少n但不超过m次
实例
System.out.println("a".matches("[abc]")); // true
System.out.println("z".matches("[abc]")); // false
System.out.println("ab".matches("[abc]")); // false
System.out.println("ab".matches("[abc]+")); //true
小结