如何在GAS中解析名称和电子邮件

时间:2013-08-08 20:22:29

标签: javascript google-apps-script

函数GmailApp.getMessageById(“1405 ... 8”)。getFrom()将在两种不同的情况下返回姓名和电子邮件,afaik:

"Full Name <email@domain.com>"
"email@domain.com" 

在任何一种情况下我都需要解析姓名和电子邮件,到目前为止,这是我发现的最好的......

function getFrom_(namemail) { // assuming namemail always contains a valid email (name <email> or just email)
  var from = {};
  from.email = namemail.match(/([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.[a-zA-Z0-9._-]+)/gi)[0];
  from.name = namemail.replace(from.email, "").replace("<>", "").trim();
  return from;
}

有更好的方法吗?

问候,Fausto

1 个答案:

答案 0 :(得分:1)

您可能想看看getReplyTo函数是否适合您:

https://developers.google.com/apps-script/reference/gmail/gmail-message#getReplyTo()

在我的测试中,返回的字符串是空的,因为我没有设置replyTo,所以YMMV。我认为它只是将全名和&lt;&gt;如果联系人在您的联系人列表中,并且看到发件人的电子邮件没有电子邮件的全名,我没有联系人数据