默认贪婪方式匹配,设置懒惰方式:?
.
:任意字符
[0-9]
:0-9
[a-z]
:a-z
[A-Z]
:A-Z
\d
:[0-9]
\D
:非数字
\w
:[a-z0-9A-Z_]
\W
:除开数字、字母、下划线之外的字符
+
:匹配1次或多次
*
:匹配0次或多次
{m, n}
:匹配m到n次,如{1, 2}
表示匹配1到2次;{1,}
匹配至少一次;{,2}
匹配至多2次
^
:匹配字符串开头
$
:匹配字符串结束
基本格式:
import re
key = '待匹配字符串'
p = '匹配规则'
pattern = re.compile(p)
res = pattern.findall(key) #匹配结果 findall结果存在list里,此外还有search
实例
import re
key = r'bat baat batt' #加r表示原生字符串,若字符串中有\不需要进行转义
p = r'ba{,2}t'