gpt4 book ai didi

javascript - 谷歌应用程序脚本条件if语句

转载 作者:行者123 更新时间:2023-11-28 09:03:22 25 4
gpt4 key购买 nike

我对 GAS 还很陌生,但学得很快。预先感谢您对此提供的任何帮助!!

我需要能够根据我的姓氏字段的第一个字符向两个不同的电子邮件地址发送电子邮件。因此,如果 var last 的第一个字符是 A - L,则将电子邮件发送给此人,否则,如果第一个字符是 M - Z,则发送给另一个人。我如何为此创建条件 if 语句?我当前的脚本将所有电子邮件发送到同一地址,如下所示:

function onFormSubmit(e) {

var timestamp = e.values[0];
var last = e.values[3];
var first = e.values[4];
var employment_status = e.values[5];
var unemployed_date = e.values[6];
var employment_type = e.values[7];
var employer_name = e.values[8];
var employer_address = e.values[9];
var employment_begin = e.values[10];
var comments = e.values[11];

var email = "xxxxx@gmail.com";
var subject = "Employment Update Received";

var message = "<HTML><BODY>"
+ "<P>Dear " + first + " " + last + ","
etc. etc.
+ "</HTML></BODY>";

MailApp.sendEmail(email, subject, "", {htmlBody: message});
}

最佳答案

@JonnyJS 走在正确的轨道上。我只使用了正则表达式。正则表达式文字包含在 // 中,选项出现在最后一个 / 之后。我通常使用RegexPal测试 GAS 的正则表达式。您可以在 MDN 上找到有关 JS Regex 的更多信息。最值得注意的是,test我在下面使用的函数。

<小时/>

这是我使用的正则表达式:

^ 字符串开头

[A-L] 任意字母 A-L

.* 任意字符,0 次或多次

$ 字符串结尾

i 不区分大小写的正则表达式选项

<小时/>

这是供您使用的代码片段。

var last = e.values[3].trim(); // Remove any leading spaces to be safe
var email = "Catch-Other-Names@mydomain.com";

var reAtoL = /^[A-L].*$/i;
var reMtoZ = /^[M-Z].*$/i;

if (reAtoL.test(last)) {
email = "A-to-L-Recipient@mydomain.com";

} else if (reMtoZ.test(last)) {
email = "M-to-Z-Recipient@mydomain.com";
}

// If both fail, then it's going to the Catch Other Names

Mail.sendEmail(email, subject, "", {htmlBody:message});

关于javascript - 谷歌应用程序脚本条件if语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17411669/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com