2012-08-17 77 views
0

我正在處理郵件合併腳本。我使用Logger.log來發現錯誤在表達式中,告訴匹配找到的內容。在我的情況下,我試圖拉取$ {xxxxxxx}內的所有密鑰。下面是我的,我需要幫助清理它,因爲在這一點上它返回null。錯誤.match表達式結果null

var template = "This is an example ${key1} that should pull ${key2} both keys from this text." 
var templateVars = template.match(/\$\{\"[^\"]+\"\}/g); 

感謝任何人都可以分享這個問題的指導。

-Sean

回答

0

我沒有真正與谷歌Apps腳本熟悉,但是我覺得這個代碼在Javascript可以幫助你。

它尋找所有的${key},並返回${ }中的每個值。我認爲這就是你要找的。

var template = "This is an example ${key1} that should pull ${key2} both keys from this text."; 
var matches = template.match(/\$\{[0-9a-zA-Z]*\}/mg); 
console.log(matches); 
for (var i = 0; i < matches.length; i++) { 
    console.log(matches[i].replace(/[\$\{|\}]/gm, "")); 
} 
+0

沒有這沒有幫助我仍然得到一個空值的match.length行。當我在該行之前登錄模板時,它將包含具有相應$ {word}標籤的所有字符串,但下一行Log將顯示matches.length爲空。 – snutzman 2012-08-17 03:19:00

+0

你能否粘貼你的代碼?在我發佈的代碼上,它效果很好。請給我一個真正的模板字符串 – hugohabel 2012-08-17 03:24:24