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)
posted @ 2020-08-31 10:06  太晓  阅读(110)  评论(0编辑  收藏  举报