首页 > 编程语言 >python3正则-修饰符flags

python3正则-修饰符flags

时间:2023-04-15 12:56:47浏览次数:42  
标签:pattern 修饰符 re flag flags print python3

1、介绍

在re模块的函数中,多数允许设置修饰符flags参数,其用于对匹配做优化和个性设置。

2、修饰符

修饰符实质上是int参数类型,可以直接指定int类型,也可以通过re调用变量名称指定。

修饰符 描述
re.I 使匹配对大小写不敏感
re.L 做本地化识别(locale-aware)匹配
re.M 多行匹配,影响 ^ 和 $
re.S 使 . 匹配包括换行在内的所有字符
re.U 根据Unicode字符集解析字符。这个标志影响 \w, \W, \b, \B.
re.X 该标志通过给予你更灵活的格式以便你将正则表达式写得更易于理解。

3、使用

(1)使用时通过函数的flag参数指定,可以是单个也可以是多个

flag=re.I
flag = re.I|re.M

(2)如果是通过参数来指定flag,可以基于数值,如果要同时使用,可以是|进行分隔,或者直接使用相加后的值,注意如果包含非指定的值,比如flags=4会报错。

print(re.I.real) #2
print(re.M.real) #8

print(re.match(pattern="abc", string="Abc123", flags=2))
print(re.match(pattern="abc", string="Abc123", flags=2|8))
print(re.match(pattern="abc", string="Abc123", flags=10))

4、其他

除了上述常见的修饰符,还存在其他的值,比如re.DOTALL,这是定义pattern中的.可以匹配包括换行符的任意字符

标签:pattern,修饰符,re,flag,flags,print,python3
From: https://www.cnblogs.com/wd404/p/17320896.html

相关文章

  • python3正则-Match类
    1、介绍re.match、re.fullmatch和re.search这三个函数,如果存在匹配,其返回pattern初次匹配的结果,类型就为re.Match。2、类和初始化3、方法pattern="(ab)c"result=re.match(pattern=pattern,string="abcdef")print(result)(1)start获取pattern整体匹配的开始索引,返回类......
  • python3正则-编译和其他
    1、介绍将作为pattern参数的str类型,编译返回Pattern类型,方便后续调用,提高效率。re模块下存在多个函数,可以进行编译,返回类型是Pattern。Pattern类具有和re正则匹配函数类似的方法,当然在参数上略有不同,比如是将待匹配文本作为Pattern类的参数。2、compile函数pattern=re.comp......
  • python3时间
    1、介绍time模块是python的内部模块。2、函数#返回float类型,1670592065.0852547形式#print(time.time())#print(type(time.time()))#休眠,单位秒#time.sleep(5)#print(123)#返回int类型,1670592289035206400形式#print(time.time_ns())#print(type(time.time_......
  • python3正则-替换和切割函数
    1、介绍这里整理sub、subn和split三个函数的使用。2、sub函数sub(pattern,repl,string,count=0,flags=0)pattern,正则表达式repl,替换文本string,待处理字符串count,表示替换的最大次数。默认为0表示全部替换flags,标志,处理模式作用是在flags代表的模式下,匹配strings指......
  • python3正则-多匹配函数
    1、介绍这里介绍findall和finditer两个函数。2、findall函数findall(pattern,string,flags=0)pattern,正则表达式string,待处理字符串flags,标志,处理模式返回类型为list,如果不存在匹配,返回空列表[]。如果存在匹配,则返回全部匹配项,这里需要注意()的影响2.1无()importr......
  • python3正则-单匹配函数
    1、介绍re模块是python3用于处理正则的模块。这里介绍三个函数,re.match、re.fullmatch和re.search的使用。其都是如果匹配,则返回re.Match类对象,为初次匹配项。不匹配则返回None。且()不影响匹配结果,只是匹配过程中对需要匹配的描述。2、match函数match(pattern,string,fla......
  • python3多线程-线程池和优先队列
    1、介绍有两种线程池方案。各线程持续存在,从任务池获取任务进行执行按照需求创建线程,每个线程只执行一个任务,结束完毕则该线程结束2、准备(1)任务池task_list任务池是用于准备各任务单元的环境,比如http爆破时的请求参数,读写文件时的路径。任务池的准备可能会占用一定时间,边准......
  • python3多线程-线程同步
    1、介绍多线程同时访问和操作同一资源,可能会造成异常。解决办法是对资源进行限制,同一时间只允许一个线程进行访问和操作。这里的资源,一般是指方法、函数或者代码块。即由多行代码组成,在逻辑上属于不可切分的操作。2、线程同步使用Thread对象的Lock和Rlock可以实现简单......
  • Java的访问修饰符
    为了实现面向对象程序设计(OOP)的封装这个特性,需要程序设计语言提供一定的语法机制来支持。这个语法机制就是访问权限控制(访问修饰符:public、protected、private、default)。在Java中,封装就意味着所有的实例域都带有private访问修饰符(私有的实例域),并提供带有public访问修饰符......
  • python3模块和相关
    1、模块为了方便管理类和函数,将其保存到不同的文件中,文件又可以存放在不同的目录下。这里的文件和目录,即python模块。(1)通过关键字import进行导入(2)一个模块只会被导入一次,不管你执行了多少次import。这样可以防止导入模块被一遍又一遍地执行。(3)搜索路径被存储在sys模块......