一、正则表达式
字符 | 匹配 |
---|---|
x | 字符x |
\ | 反斜线字符 |
字符类 | |
---|---|
[abc] | a、b、c(简单类) |
[^abc] | 任何字符,除了a、b或c |
[a-zA-Z] | a-z或者A-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,0次或者多次 |
X+ | X,一次或者多次 |
X{n} | X,恰好n次 |
X{n,} | X,至少n次 |
X{n,m} | X,至少n次 ,不超过m次 |
正则表达式就是一套规则,用来匹配字符串的。
boolean matches(String regex):判断当前字符串是否匹配指定的正则表达式,匹配返回true否则返回false。
下面来个例子,检验QQ号码:要求必须是5-15位,0不能开头,必须是数字。
public class RegexDemo {
public static void main(String[] args) {
String qq="123456";
boolean flag=qq.matches("[1-9][0-9]{4,14}");
System.out.println(flag);
}
}
运行结果是true。