在java.util.regex包里面定义了两个主要的类
Pattern类:此类对象如果要想取得必须使用compile()方法,方法的功能是编译正则
Matcher类:通过Pattern类获得
1.单个字符(数量:1)
字符:表示由一位字符组成
格式 | 意义 |
---|---|
\\ | 表示转义字符”\” |
\t | 表示一个“\t”符号 |
\n | 匹配换行(\n)符号 |
2.字符集(数量:1)
格式 | 意义 |
---|---|
[abc] | 表示可能是字符a或者字符b或者字符c中的任意一位 |
[^abc] | 表示不是a、b、c中的任意一位 |
[a-z] | 表示小写字母 |
[a-zA-Z] | 表示任意一位字母,不区分大小写 |
[0-9] | 表示任意的一位数字 |
3.简化的字符集表达式(数量:1)
格式 | 意义 |
---|---|
. | 表示任意一位字符 |
\d | 等价于“[0-9]”,属于简化写法 |
\D | 等价于“[^0-9]”,属于简化写法 |
\s | 表示任意空白字符,例如:“\t”、“\n” |
\S | 表示任意的非空白字符 |
\w | 等价于“[a-zA-Z_0-9]”,表示由任意字母、数字、下划线组成 |
\W | 等价于“[^a-zA-Z_0-9]”,表示不是由任意字母、数字、下划线组成 |
4.边界匹配
(不要在java中使用,在JavaScript中使用)
格式 | 意义 |
---|---|
^ | 正则的开始 |
$ | 正则的结束 |
5.数量表达
格式 | 意义 |
---|---|
正则? | 表示此正则可以出现0次或者1次 |
正则+ | 表示此正则可以出现1次或者1次以上 |
正则* | 表示此正则可以出现0次、1次或多次 |
正则{n} | 表示此正则正好出现n次 |
正则{n,} | 表示此正则出现n次以上(包含n次) |
正则{n,m} | 表示此正则出现n~m次 |
6.逻辑运算
格式 | 意义 |
---|---|
正则1 正则2 : | 正则1判断完成之后继续判断正则2 |
正则1|正则2 | 正则1或者正则2有一组满足即可 |
(正则) | 将多个正则作为一组,可以为这一组单独设置出现次数 |