菜鸟IT的博客 >> Python
python re.search里flags参数的使用
python正则表达式flags参数使用
介绍re.I、re.DEBUG、re.S的使用,多个flags如何使用;正则表达式贪婪模式、非贪婪模式使用实例,re.search()正则表达式传变量。
# ——————插一句解释下后面的flags参数
flags : 可选,表⽰匹配模式,⽐如忽略⼤⼩写,多⾏模式等,具体参数为:
1. re.I 忽略大小写
2. re.L 表达特殊字符集 \w, \W, \b, \B, \s, \S 依赖于当前环境
3. re.M 多行模式
4. re.S 即为 . 并且包括换行符在内的任意字符(. 不包括换行符)
5. re.U 表达特殊字符集 \w, \W, \b, \B, \d, \D, \s, \S 依赖于 Unicode 字符属性数据库
6. re.X 为了增加可读性,忽略空格和 # 后面的注释
# ——————————————
>>> re.search('abC','ABC',flags=re.I).group() ###正则匹配时,不区分大小写
# ——————————————
>>> re.search('abC','ABC',flags=re.I | re.DEBUG).group() ###2个参数,使用|分割
# ——————————————
>>> re.search('abC.*f',str,flags=re.I | re.DEBUG | re.S).group() ###使用re.S时,.可以匹配任意字符,包括换行
# ——————————————
>>> re.search('abC.*f',str2,flags=re.I | re.DEBUG | re.S).group() ###贪婪模式,最长匹配
# ——————————————
>>> re.search('abC.*?f',str2,flags=re.I | re.DEBUG | re.S).group() ##非贪婪模式匹配,遇到第1个匹配f的不继续匹配
# ——————————————
>>> re.search('name:%s' %name,'name:zte').group() ##re.search正则表达式可以传变量
# ——————————————
详细案例:https://blog.csdn.net/loneba/article/details/103966975
菜鸟IT博客[2022.04.29-17:28] 访问:327