re,findall("匹配正则","内容") #所有满足条件的结果都返回到一个列表里
ret = re.search(“匹配规则”,“内容”) #返回 匹配到的第一个满足条件的对象
ret.group() #对象可以调用group返回ret匹配成功的字符串
ret = match("匹配正则","内容") #只在字符串开头匹配,等价于^,返回一个对象
ret.group() #对象可以调用group返回ret匹配成功的字符串
re.split("匹配正则","内容") #以匹配正则分割内容
re.sub("匹配正则","替换的内容","内容") #以匹配规则匹配成功的内容替换为替换内容
obj = re.compile("匹配规则") #把匹配规则编译成对象
obj.findall("内容") #无需再加正则匹配规则
ret = re.finditer(“匹配规则”,“内容”) #ret是一个迭代器
next(ret).group()
注:r“\\” # r 是转义符,把python的 \\ 转义成正则表达式的 \
元字符
通配符:. #只能代指任意一个字符 除了换行符\n
尖角符:^ #匹配以^后一个字符开头的字符
叨叻符:& #匹配以&前一个字符结尾的字符
星号符:* #重复匹配前一个字符 0 - 正无穷个
加号符:+ #重复匹配前一个字符 1 - 正无穷个
问号符:? #匹配前一个字符 0-1个
小括号:() #分组,匹配在 ( ) 内的规则组合,只取出分组之内的内容
注:(?:) #取消分组优先级,取出整个规则内容
小括号+数字:(n) #重复匹配前一个字符n次
管道符:| #匹配前一个字符或后一个字符
大括号:{n,N} #重复匹配前一个字符n-N次,按最大匹配次数算
注:* 等价于{0,正无穷} + 等价于{1,正无穷} ? 等价于{0,1} {n,} 等价于{n,正无穷}
字符集:[ ] # 取消元字符的特殊功能 除:\ ^ -
注:[ab] 匹配 a 或者 b ,[a-z] 匹配a-z之内所有的26个字母的一个字符
[a,b]逗号代表字符, 匹配 a 或 , 或 b
[^] 取反 匹配-----[不包括^后面所有组合的]-------所有字符
反斜杠:\ #反斜杠后边跟元字符去除特殊功能 后边跟普通字符实现特殊功能
注:\d 匹配任何十进制数; 相当于[0-9]
\D 匹配任何非数字字符; 相当于[^0-9]
\s 匹配任何空白字符; 相当于[\t \n \r \f \v]
\S 匹配任何非空白字符; 相当于[^ \t \n \r \f \v]
\w 匹配任何字母数字字符;相当于[a-zA-Z0-9_]
\W 匹配任何非字母数字字符;相当于[^a-zA-Z0-9_]
\b 匹配一个特殊字符边界
固定格式(?P<name>规则) # ?P<name> 里的name 对应的正则规则为规则
注:ret.group("name") 固定格式中的name可为group函数的参数,返回name规则所对应的值