我对python3中re模块的贪婪模式感到困惑吗?

import re                                                                                                                                                
s1 = 'n1111n2222n'
p1 = re.compile(r'n.*n')
print(p1.findall(s1))

s2 = '\n1111\n2222\n'
p2 = re.compile(r'\n.*\n')
print(p2.findall(s2))

我对python3中的re模块有疑问。上面列出的代码结果为

['n1111n2222n']
['\n1111\n']

第一种情况按预期运行,而第二种则不然。 至于第二种情况,我相信应该像第一个案例一样找到“ 2222 \ n”,因为re模块在 greedy 模式下工作,但是结果出乎我的意料。 / p>

字符'\ n'和'n'之间是否有任何区别,以使re模式匹配?

qqcoboo 回答:我对python3中re模块的贪婪模式感到困惑吗?

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3155046.html

大家都在问