一、正则表达式简介
正则表达式是一个很常见的技术,用于在各种字符串的规则匹配中
二、在Java中使用正则表达式
我们需要匹配的都是字符串,很方便地是java内置了正则表达式匹配的函数即String实例的matches(String regx)方法,参数是匹配的规则
三、匹配规则
1、入门
(1)字符类
- 任意字符:用“.”表示一个任意字符,比如"a.c"就表示的就是以a开头以c结尾中间有一个任意字符的字符串
- 常用字符:常用字符有三种:数字、英文和下划线,用"\w"表示一个常用字符
- 空格符:空格符有两种:空格和tab,用“\s”表示一个空格符
(2)数字
- 数字:用"\d"表示一个数字
- 非数字:用“\D”表示一个非数字
(3)多重匹配
上面的都是匹配的单个的字符或数字,而这种匹配在应用中过于单一且麻烦,下面介绍几个多重匹配的情形
- 匹配任意个字符:在匹配单个字符的后面加上"*****"代表任意个这种字符
- 匹配至少一个字符:在匹配单个字符后面加上“+”表示至少有一个这种字符
- 匹配最多一个字符:在匹配单个字符后面加上“?”表示至多有一个这种字符
- 匹配指定个数个字符:在匹配单个字符后面加上“{n}”表示有n个这种字符
- 匹配指定范围个数的字符:在匹配单个字符后面加上“{n,m}”表示有n~m个这种字符
2、高级
(1)开头和结尾
在匹配规则前面加上“^”或“$”表示以这个规则为开头或结尾
(2)范围匹配
用中括号"[]"括起来的表示匹配这个范围之内的,下面是常用的三种范围
- [0-9]:匹配数字0-9
- [a-z]:匹配小写英文字母
- [A-Z]:匹配大写英文字母
如果在最开头加上“^”表示非此范围内匹配
(3)或匹配以及括号匹配
如果使用“|”将字符串或匹配规则分开,代表匹配其中的一种情况,一般和"()”配合使用
wwww
网友评论