我從 Google 事件日歷中提取資料。這些事件包括多個聯系點電子郵件(主要、次要等)
我目前能夠收集活動的所有電子郵件,其中包括許多重復的電子郵件。
我想獲取整個電子郵件串列(當前由“;”分隔)并決議以洗掉重復項。
我創建了一個呼叫函式,它接受一個字串(當前的電子郵件串列)并且應該回傳一個干凈的串列。
我一直在嘗試使用的代碼:
function CleanEmail (InputEmailString) {
var ReturnEmail = "";
var EmailArray = [];
var EmailArray = InputEmailString.split(";");
EmailArray.sort().reverse();
var ReturnEmail = EmailArray[0];
for (i=1; i < EmailArray.length; i) {
if (EmailArray[i-1] != EmailArray[i]) {
ReturnEmail = ";" EmailArray[i]
} // End If Statement
} // End For Statement
return ReturnEmail;
} // Close Function
我的想法是對陣列進行排序,使其按字母順序排列,然后檢查一封電子郵件以查看是否有重復。
無論我嘗試什么,回傳的電子郵件串列都不會排序,也不會洗掉任何重復項。
任何幫助是極大的贊賞。
uj5u.com熱心網友回復:
描述
使用Set您可以創建一組唯一值。
代碼.gs
function test() {
try {
let InputEmailString = "[email protected];[email protected];[email protected];[email protected];[email protected];[email protected];;[email protected];";
CleanEmail(InputEmailString);
}
catch(err) {
console.log(err);
}
}
function CleanEmail (InputEmailString) {
var ReturnEmail = "";
var EmailArray = [];
var EmailArray = InputEmailString.split(";");
EmailArray = [...new Set(EmailArray)];
EmailArray.sort().reverse();
var ReturnEmail = EmailArray.join(';')
console.log(ReturnEmail);
} // Close Function
執行日志
11:29:51 AM Notice Execution started
11:29:51 AM Info tom@another.com;mary@someOther.com;larry@stillAnother.com;joe@someSite.com;
11:29:51 AM Notice Execution completed
參考
- 放
uj5u.com熱心網友回復:
如果您只是接收由;'s 分隔的一串電子郵件 > 洗掉重復項 > 重新加入它們,
嘗試:
function CleanEmail (InputEmailString) {
return [...new Set(InputEmailString.split(`;`)].join(`;`)
}
長版:
function CleanEmail (InputEmailString) {
const emailsArray = InputEmailString.split(`;`);
const uniqueEmailsArray = [...new Set(emailArray)];
const uniqueEmailString = uniqueEmailsArray.join(`;`);
return uniqueEmailString
}
.getGuestList() 方法
// const guestList = event.getGuestList()
// const emailList = CleanEmail(guestList)
function CleanEmail (guestListData) {
const emailList = guestListData.map(i => i.getEmail())
return [...new Set(emailList)].join(`;`)
}
uj5u.com熱心網友回復:
洗掉重復項
function removedup(eA=["[email protected]","[email protected]"]) {
let uA = [];
eA.forEach(e => {
if (!~uA.indexOf(e)) {
uA.push(e);
}
})
console.log(JSON.stringify(uA));
return uA;
}
Execution log
11:50:44 AM Notice Execution started
11:50:44 AM Info ["[email protected]"]
11:50:45 AM Notice Execution completed
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/473279.html
下一篇:計算另一個谷歌表格中的最大行數
