有没有办法从Google应用脚本中的Gmail邮件对象中获取特定的电子邮件地址?

use*_*212 3 gmail google-apps-script

在Google App Scripts中处理收件箱中的电子邮件列表.从我需要的消息中获取每个消息的地址和地址.当我使用message.getFrom()方法获取from地址时,它返回如下内容:"FirstName LastName".但是,我想要的是简单的电子邮件地址:"email@domain.com"我在GmailApp对象或Message对象上找不到只返回此信息的方法.

getFrom()返回一个简单的字符串,而不是可以进一步剖析的地址对象.我错过了什么吗?

aza*_*aza 5

getFrom()方法应该以格式返回消息的发送者Some Person <someone@somewhere.com>.如果您只需要字符串的电子邮件地址部分,则可以使用这样的正则表达式提取它(来自getFrom()方法描述的改编示例):

var thread = GmailApp.getInboxThreads(0,1)[0]; // get first thread in inbox
var message = thread.getMessages()[0]; // get first message
Logger.log(message.getFrom().replace(/^.+<([^>]+)>$/, "$1"));
Run Code Online (Sandbox Code Playgroud)

该正则表达式将getFrom()方法返回的字符串替换为尖括号中的字符串部分(发件人的电子邮件地址).