用于从 .eml 文件中提取文本的正则表达式

Regex for extracting text from .eml file

我需要编写正则表达式以从电子邮件中获取以下数据。要表述的数据是名字、姓氏、phone 号码、电子邮件 ID、密码、消息等,我是新手,对 REGEX 了解不多,谁能帮助我。

enter code here联系我们

标题

先生

姓氏

S

名字

尼特什

联系我们

通过 phone 于: 0344 892 8979

E-Mail地址

niteshdsingh@gmail.com

Phone个数

123456789

邮政编码

421202

城市

测试

留言

测试

此致,

我不认为这个正则表达式可以被视为通用电子邮件解析器...而是它只适用于您提供的格式:

Last\s+Name(?:\n)+((?: *\w+)+)|First\s+Name(?:\n)+((?: *\w+)+)|By phone on:((?: *\d+)+)|(?:E-Mail\s+Address(?:\n)+((?:(?: *\w+)+)@[^\.]+\.[^<]+))|(?:Phone Number(?:\n)+((?: *\w+)+))|(?:Postcode(?:\n)+((?: *\w+)+))|(?:Message(?:\n)+((?: *\w+)+))

Regex 101 Demo

在以下组中您可以获得所需的数据:

Group 1.    Last Name
Group 2.    First Name
Group 3.    By phone on
Group 4.    email
Group 5.    Phone Number
Group 6.    Postcode
Group 7.    Message

UPDATED AS PER THE OP COMMENT:

(?:E-Mail\s+Address(?:\n)+((?:(?: *\w+)+)@[^\.]+\.[^<]+))|(?:Phone Number(?:\n)+((?: *\w+)+))|(?:Postcode(?:\n)+((?: *\w+)+))|(?:Message(?:\n)+((?: *\w+)+))|(?:City(?:\n)+((?: *\w+)+))

Demo Two