使用字符串搜索中的日期变量搜索文件

时间:2017-10-24 16:28:51

标签: string variables google-apps-script google-drive-api

我目前正在尝试根据今天的日期(格式化为字符串)搜索GAS中的文件,但我似乎无法正确使用语法来转义搜索字符串。

我的文件标题是"客户 - dd-MM-yyyy","客户 - dd-MM-yyyy-1","客户 - dd-MM-yyyy -2"等等。有些日子只有一个文件,因此没有-1或-2扩展名。

我尝试过的变化:

var TodayDate =  Utilities.formatDate(new Date(),"GMT+1", "dd-MM-yyyy"); //Get today's date
var files = DriveApp.searchFiles('title contains "Customers" and title contains TodayDate');

var TodayDate =  Utilities.formatDate(new Date(),"GMT+1", "dd-MM-yyyy"); //Get today's date
var files = DriveApp.searchFiles('title contains "Customers" and title contains '+TodayDate);

如果我只有一个文件,没有-1或-2扩展名,则下面的代码可以正常工作:

var TodayDate =  Utilities.formatDate(new Date(),"GMT+1", "dd-MM-yyyy"); //Get today's date
var files = DriveApp.getFilesByName('Customers '+TodayDate);

我还尝试在TodayDate周围使用某种形式的。*符号,但却无法将regexp理解为通配符。

非常感谢任何帮助或指示!

1 个答案:

答案 0 :(得分:1)

您正在搜索日期字符串,该字符串仍然是字符串,因此必须引用它,就像字符串Customers:

var files = DriveApp.searchFiles('title contains "Customers" and title contains "'+TodayDate+'"');