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

三 re 模块的findall 方法
1、w 匹配字母数字下划线

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

3、 s 匹配任意空白字符

4、 S 匹配任意非空字符

5、d 匹配任意数字
6、D 匹配任意非数字
7、 匹配一个换行符
8、 匹配一个制表符
9、^ 以什么开头

10、$ 以什么结尾

重复相关的匹配
11、 . 代表任意一个字符

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

. 加入参数也能匹配

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
