当我是模式搜索时,我想搜索多行

时间:2013-04-08 07:47:58

标签: python regex

我有一些问题。 一次多行,我想匹配 一次不是多行而不是一行搜索?

当我运行代码时会产生这些结果。 在^和$之间,如果你可以使用其他变量。

pattern = r'.INFO..+Content'
m = re.compile(pattern,re.S|re.X)

f = open(LOG_FILE)

data = f.read()
print m.search(data).group()
f.close()

现在输出     [INFO] 0408 | 09:50:16.57 | /lib/smtp/smtp.c:670 | [1120794944] [<<收到<<<<     (16465.2500)SMTP命令:MAIL FROM:> ^ M

[INFO] 0408| 09:50:16.57| /lib/smtp/smtp.c:670| [1120794944] [>>>   SEND   >>>] 
(16465.2500)     SMTP COMMAND : 250 2.1.5 Ok^M

[INFO] 0408| 09:50:16.58| /lib/smtp/smtp.c:670| [1120794944] [<<< RECEIVED <<<] 
(16465.2500)     SMTP COMMAND : RCPT TO: >^M

[INFO] 0408| 09:50:16.58| /lib/smtp/smtp.c:670| [1120794944] [>>>   SEND   >>>] 
(16465.2500)     SMTP COMMAND : 250 2.1.0 Ok^M

Date: Mon, 08 Apr 2013 09:50:19 +0900^M
Sender: +821057033705/TYPE=PLMN^M
From: +821057033705/TYPE=PLMN^M
To: +821046903908/TYPE=PLMN^M
X-Mms-Message-ID: 1Tf48000001^M
X-Mms-Transaction-ID: 1Tf48000001^M
Content-Type: text/plain;charset="UTF-8"^M
Content

1 个答案:

答案 0 :(得分:1)

文档(http://docs.python.org/2/library/re.html)状态; re.Mre.MULTILINE

在regex-ing multiline时,可能不再需要遍历文件行:)