2015-01-31 1 views
1

액세스 할 때 Gmail 주소를 사용하는 대규모 팀에서 자동으로 할당 된 시트로 열리는 Google 시트를 만들려고합니다. Apps Script에서 문자열을 자르는 방법은 무엇입니까? 3 행의 "email.slice"는 단순히 장소 소유자로 만든 것입니다.Python과 같이 Google Apps Script에서 문자열을 분할하는 방법은 무엇입니까?

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

JavaScript 문자열 목록 방법 : [Microsoft 설명서] (https://msdn.microsoft.com/en-us/library/ie/ecczf11c(v=94) .aspx) [Mozilla 설명서] (https : //developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String) [JavaScript String Reference List] (http://www.w3schools.com/jsref/jsref_obj_string.asp) –

답변

3

슬라이스 메서드는 문자열의 일부를 반환합니다. 당신은 그것 모두를 돌려 줄 수는 있지만 그 점은 없습니다. 두 매개 변수가 있습니다. 하나는 선택 사항이며 으로 시작하고 매개 변수입니다. 시작이 먼저오고 끝이이고 두 번째가 입니다. 매개 변수가 사용되지 않으면 메서드는 자동으로 문자열 끝으로갑니다.

Apps Script는 자바 스크립트를 사용하므로 모든 자바 스크립트 참조 자료를 사용하면 기본적인 프로그래밍과 관련된 모든 정보를 얻을 수 있습니다.

귀하의 경우, 슬라이스를 indexOf()과 결합해야합니다.

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

내가 좋아한다. 로거 추가 - 좋은 연습입니다. – NonCreature0714

3

하위 문자열은 다음

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

내가하고 결국 무엇인가 잘 작동합니다 :

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

잘했다.

관련 문제