Mi aplicación recibe el correo electrónico de los usuarios. Una respuesta de Gmail, por ejemplo, se presenta en la siguiente manera:Eliminación del mensaje original de una respuesta de correo electrónico
This is some new text
On Sun, Apr 1, 2012 at 3:32 AM, My app <
4f77ed3860c258a56[email protected]> wrote:
> Original...
> message..
Por supuesto, este tratamiento varía de un cliente a otro.
Ahora estoy identificando el '4f77ed3860c258a567aeabf8' y tirando todo después, porque sé a qué dirección de correo electrónico me han enviado. Esta no es una solución general, pero funciona para mis propósitos, excepto para cuando hay un salto de línea en la línea "Mensaje original", como en el ejemplo anterior.
¿Existe una forma mejor y estándar para eliminar mensajes pasados de la respuesta de un usuario a un correo electrónico?
el problema con esto es que un diff de forma incorrecta marcar "en Sun, 1 de abril ... XX escribió: "como parte del nuevo mensaje. Parece que la única solución puede ser simplemente aprender cómo responde cada cliente (gmail, outlook, etc.). –
Postularía que la mayoría de los proveedores siempre pondrían esto en una nueva línea. ¿No puedes hacer la diferencia que borrar la línea entre el último salto de línea y el penúltimo? Entonces, su ejemplo, ¿es realmente multilínea o simplemente cómo se pegó? – FlavorScape
En realidad es multilínea en el ejemplo que publiqué. Mis usuarios también tienen la costumbre de no preservar la nueva línea entre su mensaje y la línea del proveedor. Creo que puedo pensar en un par de heurísticas mientras reúno las cadenas del "mensaje original" de cada cliente ... –