正则表达式描述一种字符串匹配模式,能够判断一个字符串中是否存在字符或取出字符
基本语法
- 通过多多种元字符及运算符组合成的表达式进行字符串匹配
- 常用字符及其行为
| 字符 | 作用 |
|---|---|
| \ | 将下一个字符标记为特殊字符 |
| ^ | 匹配字符串输入的开始位置,与[]搭配时可做复制字符集合([^xyz]) |
| $ | 匹配字符串结束的位置 |
| * | 匹配前面的字符0次或者多次 |
| + | 匹配前面的字1次或者多次 |
| ? | 匹配前面的字符0次或者1次,紧跟在其他限制符上为非贪婪匹配 |
| {n,m} | 匹配前面的字符n-m次 |
| (pattern) | 匹配pattern并且获取这一匹配,使用$0-$9 |
| \d | 匹配一个数字字符,相当于[0-9] |
| \D | 匹配一个非数字字符,相当于[^0-9] |
| \w | 匹配字母、数字、下划线,相当于[A-Za-z0-9_] |
| \W | 匹配一个非字母、数字、下划线 |
| \s | 匹配任何非空字符,相当于[\f\n\r\t\v] |
| \S | 匹配一个非空白字符,相当于[^\f\n\r\t\v] |
| \f | 匹配一个换页符 |
| \n | 匹配一个换行符 |
| \r | 匹配一个回车符 |
| \t | 匹配一个制表符 |
| \v | 匹配一个垂直制表符 |
- 字符优先级
- \
- (),[]
- *,+,?,{n,m}
- ^,$,\元字符
- |
匹配规则
-
模式(用基本字符组成)
- /hyq/ 匹配 “hyqissocutexixixi” "iamhyq"等
- /^hyq/ 匹配 "hyqissocute" 不匹配"iamnothyq"
-
字符簇(将所有字符放在“[ ]”内)
[a-z0-9A-Z] 匹配所有数字大写小写字母
举例
- 匹配邮箱
- 匹配手机号
自己学习的笔记 ,有错误还望指出!谢谢!