Je récupère du texte brut (y compris l'en-tête et le message) d'un serveur POP. Je dois capturer tout après l'en-tête qui se termine par une ligne vide entre lui et le message de l'utilisateur.Modèle Regex pour extraire des données de messagerie électronique
En même temps je veux ignorer n'importe quoi des messages originaux si c'est une réponse. Le début d'une réponse pour les courriels que je suis parsing départ avec
------Original Message------
Un email exemple pourrait ressembler à ceci
Return-Path: ...
...
Plus Email Métadonnées: ...Bonjour à partir de terres regex, je suis heureux d'avoir des nouvelles de vous.
------ ------ Original Message
Metadata: ...
...Hey mec regex, tu peux me aider? Merci!
Cordialement, Me.
J'ai besoin d'extraire "Bonjour de la terre regex, je suis heureux d'avoir de vos nouvelles." et tout autre texte/lignes avant le message original.
J'utilise cette regex maintenant (C# en mode multiligne) et il semble fonctionner sauf qu'il capture ------ Original Message ------ si le corps est vide. Je préfère avoir une chaîne vide à la place.
^\s*$\n(.*)(\n------Original Message------)?
Modifier
Je n'ai pas voté vers le bas tout le monde et si vous arrivez à downvote, il est généralement utile d'inclure des commentaires.
J'utilise un client POP3 que je disais à utiliser et au lieu de récupérer des messages sous forme d'objets (comme je le ferais Je préfère), je ne peux récupérer que du texte brut pour chaque message. Sinon, ce ne serait pas un problème. – jlafay
Euhhh ... cela n'a pas vraiment de sens d'utiliser regex pour ça ... quel client pop3 utilises-ce client pop3 devrait s'occuper de la gestion du corps du message etc ... sinon regex ne serait pas nécessaire!! – t0mm13b
Merci d'avoir essayé d'aider tommie. Mettons-le dans cette perspective alors. J'ai le code du client de messagerie PO3 et je l'étend pour instancier un objet MailMessage pour chaque message récupéré du serveur POP. Maintenant, j'écris des méthodes pour extraire des parties du texte brut pour hydrater les propriétés de l'objet. – jlafay