如何像 Python 那样在 Google Apps 脚本中分割字符串?

How do I slice strings in Google Apps Script like in Python?

我正在尝试制作一个 Google Sheet,在大型团队访问时使用他们的 gmail 地址自动打开分配给 sheet 的 sheet。如何在 Apps 脚本中对字符串进行切片?第三行的 "email.slice" 只是我作为占位符编造的。

function onOpen() {
    var email = Session.getActiveUser().getEmail();
    var username = email.slice[0:-9];
    var ss= SpreadsheetApp.openById(username);
    SpreadsheetApp.setActiveSpreadsheet(ss);
}

切片方法 return 是字符串的一部分。你可以 return 所有这些,但那没有意义。有两个参数,一个是可选的,startend参数。 Start在前,end在后,end是可选的。如果未使用 end 参数,该方法会自动转到字符串的末尾。

Apps 脚本使用 JavaScript,因此您想要使用的任何 JavaScript 参考资料 material 都会为您提供与基本编程相关的几乎所有内容的答案。

在您的情况下,您需要将 slice 与 indexOf() 结合使用。

var username = email.slice(0, email.indexOf("@"));
Logger.log('username is: ' + username); //VIEW, LOGS to see print out

子串也可以

var username = email.substring(0, email.indexOf("@"));

这是我最后做的事情:

function onOpen() {
    var email = Session.getActiveUser().getEmail();
    var ldap = email.slice(0,-11);
    var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
    SpreadsheetApp.setActiveSheet(spreadsheet.getSheetByName(ldap));
    }

工作得很好。