正则表达式的简单用法
1. ()、[]、{}区别
() #作为一个整体来进行处理
eg. (abc) 必须匹配abc三个连续字符
[] #标记要匹配的内容
eg. [A-Za-z0-9] 必须是字母或者数字
{} #表示出现次数
eg. (abc){3} abc连续字符必须连续出现3次
(abc){1,3} abc连续字符必须连续出现1-3次
2. ^、 $
^ #表示开头(还可以表示否定)
eg. ^[1] 以1作为开头
[^a] 不是a字符,且表示否定一定要在[]里面
/[],则还是表示开头
$ #表示结尾
eg. q$ 已q作为结尾
3. \d、\d、 \s、\s、 \S、\S、\w、\w、\W、\W
\\ 是对\ 的转义
\d 表示匹配数字
\s 表示匹配任意空白字符
\S 表示匹配任意非空白字符
\w 表示匹配非特殊字符,即a-z、A-Z、0-9、_、汉字
\W 表示匹配特殊字符,即非字母、非数字、非汉字、非_
4. ? 、 + 、 *
这些都是表示匹配前面出现的次数
? 0 || 1
+ >=1
* >=0
5. .
匹配除换行符 \n 之外的任何单字符。要匹配 . ,请使用 \. 。
.* #匹配到行尾
综合使用
"^[1]\\d{10}$" #手机号正则
"^0\\d{2,3}[- ]?\\d{7,8}" #固话正则
"^[1-9]\\d{5}[1-9]\\d{3}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}([0-9Xx])$" #身份证正则
^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$ #邮箱正则