正则模块 && re

一、 什么是正则?

正则就是用一些具有特殊含义的符号组合到一起(称为正则表达式)来描述字符或者字符串的方法。或者说:正则就是用来描述一类事务的规则。(在python中)它内嵌在python中,并通过re模块实现。正则表达式被编译成一系列的字符码,然后由c编写的匹配引擎执行

二、常用正则模式

三  re 模块的findall 方法

1、\w 匹配字母数字下划线

2、\W  匹配非字母数字下滑线

3、 \s 匹配任意空白字符

4、 \ S 匹配任意非空字符

 

5、\d  匹配任意数字

6、\D 匹配任意非数字

7、\n 匹配一个换行符

8、\t 匹配一个制表符

9、^ 以什么开头

10、$ 以什么结尾

重复相关的匹配

11、  . 代表任意一个字符

 .  只能匹配\n 以外的任意字符

 .  加入参数也能匹配\n

12、 ?代表?左边的字符出现0次或者1次

13、* 代表* 号左边的字符出现0次或者无穷次

14、+ 代表+号左边1次或者无穷次

15、{m,n} 代表左边的字符出现m次到n次

16、 .* 代表任意字符(贪婪匹配) 

17、 .*? 非贪婪匹配

或者相关匹配

18、 | 或者

默认只匹配括号里面的

匹配全部

小练习:

解读:先看herf=“()”,在看括号里面

19 .、\ 反斜杠的用法

20、 [ ] 取括号内任意一个

四 re 模块的其他方法

1、re.search

有结果就放回一个对象,没有结果就放回none

查看匹配成功的结果,只匹配成功一次就返回

2、re.match

和search 的用法基本一致,从开头取值,有就返回,没有就返回none

3、re.split

4、re.sub

第一个单词和最后一个单词调换,其中()只是表示一个组和后面的1,2,3,4,5对应,第一个组表示以字母开头,第二个组表示非字母,第三个组表示任意字符,第四个组表示非字母,第五个组表示单词

5、re.compile

 

posted @ 2018-01-15 16:34  于广威  阅读(141)  评论(0编辑  收藏  举报