Skip to main content
 首页 » 编程设计

python之re.DOTALL 和 re.MULTILINE 有什么区别

2025年05月04日9bluestorm

<分区>

在多行匹配一个表达式时,我总是使用 re.DOTALL 并且它工作正常。现在我偶然发现了 re.MULTILINE 字符串,看起来它在做同样的事情。

来自 re 模块(没有说得更清楚,但值不同):

M = MULTILINE = sre_compile.SRE_FLAG_MULTILINE # make anchors look for newline 
S = DOTALL = sre_compile.SRE_FLAG_DOTALL # make dot match newline 
 
SRE_FLAG_MULTILINE = 8 # treat target as multiline string 
SRE_FLAG_DOTALL = 16 # treat target as a single string 

那么在用法上有什么不同吗?在哪些微妙的情况下它可以返回不同的东西?