Python正则表达式中re.M 是什么意思

Python正则表达式中re.M是什么意思新手... Python正则表达式中re.M 是什么意思新手 展开
 我来答
娱乐小八卦啊a
高粉答主

2020-04-11 · 娱乐小八卦,天天都知道
娱乐小八卦啊a
采纳数:256 获赞数:117860

向TA提问 私信TA
展开全部

Python正则表达式中re.M的意思是:多行匹配,影响 ^ 和 $。

正则表达式可以包含一些可选标志修饰符来控制匹配的模式。修饰符被指定为一个可选的标志。多个标志可以通过按位 OR(|) 它们来指定。如 re.I | re.M 被设置成 I 和 M 标志:

re.I:使匹配对大小写不敏感。

re.L:做本地化识别(locale-aware)匹配。

re.S:使 . 匹配包括换行在内的所有字符。

re.U:根据Unicode字符集解析字符。这个标志影响 \w, \W, \b, \B。 

re.X:该标志通过给予你更灵活的格式以便你将正则表达式写得更易于理解。    

  

扩展资料

正则表达式的模式有I、L、M、S、X、U六种模式:

1、I (IGNORECASE) , 忽略大小写的匹配模式。

2、L (LOCALE),字符集本地化。

使预定字符类 \w \W \b \B \s \S 取决于当前区域设定,比如在转义符\w,在英文环境下,它代表[a-zA-Z0-9_],即所以英文字符和数字。如果在一个法语环境下使用,缺省设置下,不能匹配"é" 或 ""。加上这L选项和就可以匹配了,不常用。

3、M (MULTILINE),多行模式。

改变 ^ 和 $ 的行为,^匹配开始位置,这种模式下匹配每一行的开始,$匹配结束位置,这种模式下匹配每一行的结束。

4、S (DOTALL),点任意匹配模式。

此模式下.可匹配任何字符,包括换行符

5、X (VERBOSE),冗余模式。

这个模式下正则表达式可以是多行,忽略空白字符,并可以加入注释,方便理解。

6、U (UNICODE),unicode定义模式。

使预定字符类 \w \W \b \B \s \S \d \D 取决于unicode定义的字符属性。

紫薇参星
科技发烧友

2018-03-09 · 有一些普通的科技小锦囊
知道大有可为答主
回答量:5983
采纳率:92%
帮助的人:3601万
展开全部

正则表达式中的re.M表示将字符串视为多行,从而^匹配每一行的行首,$匹配每一行的行尾

我给你个Python语言的例子,你看看吧

这个程序是匹配冒号加一个空格后的数字串,中间有换行符\n所以用多行匹配re.M

#!/usr/bin/python3
 
import re
 
line = "IF_MIB::=Counter32: 12345\nIF_MIB::=Counter32: 1234556";
result = re.findall( r'(?<=\:\s)\d+$', line, re.M)
 
if result:
     print (result)
else:
     print ("Nothing found!!")



运行结果
['12345', '1234556']
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式