RAILS:如何从电子邮件正文中删除电子邮件的内容(签名等)?

时间:2011-02-18 22:24:21

标签: ruby-on-rails parsing email ruby-on-rails-3

我想知道如何删除电子邮件的内容,并且当我在轨道上的ruby中返回电子邮件正文html时,可能会执行类似gmail的线程。

例如,以下文本将发送到我的应用程序:

Hey XYZ, 

I've fixed that error and tested it a couple of times, it seems to be working fine now.

On Fri, Feb 18, 2011 at 7:44 AM, Joe David <joe@david.com> wrote:
Initial thread starts here... 

-- 
Thanks
joe@david.com

1 个答案:

答案 0 :(得分:2)

电子邮件格式是一件棘手的事情。您可以使用检测字符串On Fri, Feb 18, 2011 at 7:44 AM, Joe David <joe@david.com> wrote:的正则表达式查找电子邮件之间的边界。但是你不能保证所有传入的消息都有一个像电子邮件之间那样的字符串。

另一种选择是检查>字符,该字符可能出现在每个引用行的开头。但是,如果您收到不符合此约定的消息,则必须再次担心会发生什么。

另一个选择 - 我认为Gmail会这样做 - 就是查找传入消息和之前消息之间的匹配。即如果你在消息中看到Initial thread starts here...Thanks, joe@david.com,并且你在数据库中的前一条消息中也有这个消息,那么你可以推断它是来自线程早期的引用。