Python 正则使用 备查
检查字符串是否与正则匹配
常用方法 re.search(pattern, string, flags=0),
匹配时返回 re.Match 对象,不匹配时返回 None 。
- pattern 一个字符串形式的正则表达式
- string 要匹配的字符串
- flags 可选,表示匹配模式,如:re.I 使匹配对大小写不敏感,re.M 多行匹配(影响 ^ 和 $),re.S 使 . 匹配包括换行在内的所有字符等。
用例:
s = "abcd1234"
tmp = re.search(r"d1", s)
print(type(tmp))
print(tmp)
输出:
<class 're.Match'>
<re.Match object; span=(3, 5), match='d1'>
tmp = re.search(r"aa", s)
print(tmp)
输出:
None
提取匹配的字符串
常用方法 group([group1, …]) ,
用于获得一个或多个分组匹配的字符串,当要获得整个匹配的子串时,可直接使用 group() 或 group(0)。
s = "abcd1234"
tmp = re.search(r"b(.{3})(.*)", s)
if tmp != None:
print(tmp.group())
print(tmp.group(0))
print(tmp.group(1))
print(tmp.group(2))
print(tmp.group(1,2))
else:
print("匹配失败")
输出:
bcd1234
bcd1234
cd1
234
('cd1', '234')
替换
pattern = r"d1"
re.sub(pattern, "", s)