单字符匹配
. 匹配除了换行符之外的任意字符
\d 匹配数据0~9 => [0-9] => [^\D]
\D 匹配非数字 =>[^\d]
\s 匹配空白字符 空格 \n \r....
\S 匹配非空白字符
\w 匹配单词字符[a-zA-Z0-9_]
\W 匹配非单词字符 [^\w]
[a-z]
[1-34-9]
^ 匹配开头
$ 匹配结尾
多字符匹配
* 匹配* 前的表达式任意次数
+ 匹配+ 前的表达式至少1次
? 匹配?前的表达式0~1次
{n,m} 匹配{n,m} 前的表达式n~m次
{n} 匹配{n} 前的表达式n次
非贪婪匹配(竟可能少的匹配)
*?
+?
??
| 或
() 分组
r 原始字符
\ 转义符
import 导入re
re.compile(): 构建正则表达式对象
re.match(): 从字符串起始位置匹配(第一个字符开始),匹配到结果,立即返回,否则,返回None,单次匹配
re.search(): 从起始位置开始在整个字符串中匹配,匹配到结果,立即返回,否则,返回None,单次匹配
re.findall(): 匹配出字符串中所有符合正则表达式的结果,将匹配结果放入list中返回
re.finditer(): 匹配出字符串中所有符合正则表达式的结果,返回的是一个可迭代对象
re.split(): 根据正则表达式,分割字符串
re.sub(): 根据正则表达式,替换字符串
网友评论