RAILS: Как удалить содержимое письма (подпись и т. Д.) Из тела письма? - PullRequest
2 голосов
/ 19 февраля 2011

Мне интересно, как я могу удалить содержимое письма и, возможно, выполнить gmail-подобный поток, когда html тела письма возвращается в ruby ​​на рельсах.

Например, в мое приложение отправляется следующий текст:

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 Ответ

2 голосов
/ 19 февраля 2011

Формат электронной почты сложная вещь.Вы можете использовать поиск границ между электронными письмами, используя регулярное выражение, которое обнаруживает строки типа On Fri, Feb 18, 2011 at 7:44 AM, Joe David <joe@david.com> wrote:.Но вы не можете гарантировать, что все входящие сообщения будут иметь такую ​​строку между электронными письмами.

Другой вариант - проверить наличие символа >, который может появляться в начале каждой строки в кавычках.Однако вам еще раз придется беспокоиться о том, что произойдет, если вы получите сообщение, которое не соответствует этому соглашению.

Еще один вариант - и я думаю, что Gmail делает это - это поиск совпадений междувходящее сообщение и предыдущие сообщения.То есть, если вы видите Initial thread starts here...Thanks, joe@david.com в сообщении, и у вас также есть это в предыдущем сообщении в вашей базе данных, вы можете сделать вывод, что это цитата из более ранней в цепочке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...