我想从电子邮件的多行剪辑上做一个复杂的(对我来说)正则表达式。我努力了,没有运气。我试图摆脱任何东西从“开”通过“写道:”使用正则表达式的电子邮件字符串解析
如果您还可以检查它是否包含单词“AcmeCompany”,所以它不会检查所有内容“ “‘中写道:’
到目前为止,我有这样的:/On(.*)AcmeCompany(.*)/im
,但它不工作...
say hello, world!
On Tue, Jun 7, 2011 at 6:18 AM, AcmeCompany <
[email protected]> wrote:
感谢您的答复,但似乎还有另外一个问题。
编辑:我发现这个工作:/On[\s\S]+?AcmeCompany[\s\S]+?wrote:/m
,但它似乎失败时,电子邮件内容的单词“开”。
say hello, world!
On a plane!
On Tue, Jun 7, 2011 at 6:18 AM, AcmeCompany <
[email protected]> wrote:
EDIT2:每个邮件客户端不同的是...的Gmail倾向于做,在2号线,从iPhone邮件应用程序做,在1号线,所以它好好尝试始终遵循严格的格式。
1件事情肯定:开始总是使用“开”,结束于“写:”。它还包含一个散列和AcmeCompany,我也可以用它来验证。
你不需要捕捉'。*',试试'On。* AcmeCompany。*' – Dani 2011-06-07 15:23:20
@Dani nope ...没有工作 – tpae 2011-06-07 15:26:24
'.'不会捕捉换行符,这就是为什么你在跨越多行的正则表达式遇到问题。 – 2011-06-07 15:31:07