正则表达式基础(一)

来源:互联网 发布:卖家如何淘宝客推广 编辑:程序博客网 时间:2024/05/22 06:23

正则表达式

详情免费下载路径: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个以上任意字符

+*的差别在于+表示必须有一个,而*则代表可以没有

 

在限制条件为特定字符出现有01次时,可以使用?

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”

   

原创粉丝点击