正则表达式描述一种字符串匹配模式,能够判断一个字符串中是否存在字符或取出字符
基本语法
- 通过多多种元字符及运算符组合成的表达式进行字符串匹配
- 常用字符及其行为
字符 | 作用 |
---|---|
\ | 将下一个字符标记为特殊字符 |
^ | 匹配字符串输入的开始位置,与[]搭配时可做复制字符集合([^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] 匹配所有数字大写小写字母
举例
- 匹配邮箱
- 匹配手机号
自己学习的笔记 ,有错误还望指出!谢谢!
网友评论