正则表达式
详情免费下载路径:http://filemarkets.com/fs/eg3m8i9neg70d35260/
第一部分
1、 正则表达式里的一些特殊符号
1.\d: 数字 等价于[0-9]
2.\w: 单独字符[a-z A-Z 0-9]
3.\W: 非单独字符[^a-z A-Z 0-9]
4.\b: 一个单词的边界
5.\B: 一个非单词的边界
6.\\ 反斜杠
7.\t 间隔
8.\n 换行
9.\r 回车
2、 限制字符
1.^ 为限制开头
2.^head 条件限制为以head开头字符
3.$ 为限制结尾
4.end$ 条件限制为以end为结尾字符
5. . 条件限制除\r、\n外的一个任意字符
6.body.. 条件限制body后除换行外任意两个字符
3、 特定限制条件[]
1.[a-z] 条件限制在a到z范围中一个字符
2.[a-zA-Z] 条件限制在大写A到Z范围中一个字符
3.[0-9a-z] 条件限制在小写0到9或a到z范围中一个字符
4.[0-9[a-z] 条件限制在小写0到9或a到z范围中一个字符(交集)
加入^后加再次限制条件
5.[^a-z] 条件限制在非a到z范围中一个字符
4、 在限制条件为特定字符出现0次以上时,可以使用 *
1.A* 任意个A也可以没有
2.A*B A与B之间可以有任意个除\r\n外的字符,也可以没有
在限制条件为特定字符出现1次以上时,可以使用+
3.A+ 1个以上A
4..+ 1个以上任意字符
5.A.+B A与B之间1个以上任意字符
+与*的差别在于+表示必须有一个,而*则代表可以没有
在限制条件为特定字符出现有0或1次时,可以使用?
6.AB? 代表A或者AB
限制为连续出现指定次数字符(a)
7.A{2} AA
8.A{3,} 至少3个
9.A{3,5} 至少3个至多5个
10.A|B A或者B
5、 匹配特定数字
1.^[1-9]\d*$ 匹配正整数:以1-9数字开头可以0个也可多个,并且后面不带其他字符,&表示立即结束掉
2.^-[1-9]\d*$ 匹配负整数
匹配特定字符串
3.^[a-zA-z]+$ 匹配由26个英文字母组成的字符串:^[a-zA-z]:表示英文字母 +:表示一个或者多个 $表示结束
用大括号括起来,用以表示重复次数的范围
ab(2):表示一个字符串有一个a跟着两个b
ab(2,) 表示一个字符串有一个a跟着至少2个b
*,+、?相当于{0,},{1,}{0,1}
还有一个| 表示或操作
.可以代替任何字符
方括号表示某些字符允许在一个字符串中的某一特定位置出现
-----------常用正则表达式
验证数字:^[0-9]*$
验证n位的数字: ^d{n}$
验证至少n位数字 ^d{n,}$
^The: 表示所有以The开始的字符串
Of despair$: 表示以Of despair结尾的字符串
^abc$: 表示开始和结尾都是abc的,也即只有abc
ab*: 表示一个字符串有一个a后面跟着0个或多个b
ab+: 表示一个字符串有一个a后面跟着至少一个b
ab?: 表示一个字符串有一个a后面跟着0个或者一个b
第二部分
1、 正则表达式规则
1. 简单的转义字符:匹配字符串中‘^’,’$’,’.’字符,则表达式需要写成‘\^’,‘\$’,‘\.’
2. 能够与多种字符匹配的表达式:
\d:任意一个数字
\w:任意一个字母或数字或下划线
\s:包括空格,制表符、换页符等空白字符的其中任意一个
.:小数点可以匹配除了换行符意外的任意一个字符
举例:表达式”\d\d”,在匹配“abc123”时,结果为True,匹配的内容为“12”
原文链接:https://www.f2er.com/regex/362956.html