2013-12-11 57 views
19

我有一個谷歌形式,當用戶提交它會觸發我的功能運行,這是創建一個他們提交作爲谷歌文檔的摘要。我知道它可以自動發送電子郵件,但我需要它的格式,以便我的用戶稍後可以編輯它。谷歌腳本,看看文本是否包含值

表單上有一些複選框 - 但getResponse()只填充了選中的項目,我需要它顯示所有可能的選項。然後我會以某種方式指出檢查的內容。

我找不到方法來查看文本是否包含值。 像Java中的字符串一樣,我可以執行.contains("9th").indexOf("9th") >=0然後我會知道該字符串包含9。我怎樣才能用谷歌腳本來做到這一點?看過所有的文檔,我覺得它一定是最容易的事情。

var grade = itemResponse.getResponse(); 

需要看看等級是否包含9。

謝謝!

+0

以防萬一你不知道,你可以使用[降價](HTTP://堆棧溢出/編輯 - 幫助)格式化代碼您的帖子正文中有片段。這有助於使您的問題更加簡潔和可讀。 – brandonscript

回答

27

谷歌Apps Script是JavaScript中,你可以使用所有的字符串方法...

var grade = itemResponse.getResponse(); 
if(grade.indexOf("9th")>-1){do something } 

您可以找到的文檔在許多網站,this one例如。

+0

謝謝!我發誓我試過了,還有其他20件事,但現在它起作用了! – Sharon

+0

很高興它幫助(我敢肯定你做到了,但一些細節一定是錯誤的,我猜,這樣的事情發生:-) - 請考慮接受答案。 –

+9

注意:在ECMAScript 6(2015)之前,endsWith()和starsWith()不是Javascript標準,因此即使Google Apps腳本在您提供的w3schools.com鏈接中,但在大多數瀏覽器支持它們時,它們也不支持這兩種。 爲了支持這兩個功能,你可以添加 String.prototype.startsWith = function(prefix){ return this.indexOf(prefix)=== 0; } String.prototype.endsWith = function(suffix){ return this.match(suffix +「$」)== suffix; };如http://rickyrosario.com/blog/javascript-startswith-and-endswith-implementation-for-strings/中的 –

0

我使用了Google Apps腳本方法indexOf(),它的結果是錯誤的。所以我寫的小功能Myindexof(),而不是的indexOf:

function Myindexof(s,text) 
{ 
    var lengths = s.length; 
    var lengtht = text.length; 
    for (var i = 0;i < lengths - lengtht + 1;i++) 
    { 
    if (s.substring(i,lengtht + i) == text) 
     return i; 
    } 
    return -1; 
} 

var s = 'Hello!'; 
var text = 'llo'; 
if (Myindexof(s,text) > -1) 
    Logger.log('yes'); 
else 
    Logger.log('no'); 
相關問題