正则表达式,如何匹配多行?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (429)

我将该From行一直匹配到以下行的末尾Subject

....
From: XXXXXX 
Date: Tue, 8 Mar 2011 10:52:42 -0800 
To: XXXXXXX
Subject: XXXXXXX
....

到目前为止我有:

/From:.*Date:.*To:.*Subject/m
提问于
用户回答回答于

可以使用/m修饰符来启用多行模式

message = <<-MSG
Random Line 1
Random Line 2
From: person@example.com
Date: 01-01-2011
To: friend@example.com
Subject: This is the subject line
Random Line 3
Random Line 4
MSG

message.match(/(From:.*Subject.*?)\n/m)[1]
=> "From: person@example.com\nDate: 01-01-2011\nTo: friend@example.com\nSubject: This is the subject line"
用户回答回答于

如果你使用ruby,你可以尝试:

Regexp.new("some reg", Regexp::MULTILINE)

扫码关注云+社区

领取腾讯云代金券