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