Мой скрипт листов Google запрашивает папки на диске Google, чтобы вернуть имена файлов для всех документов, которые соответствуют имени переменной [first last]. Вот сценарий:
var search20 = sh1.getRange("B2").getValue();
var searchFor = 'title contains "JR"' + 'and fullText contains "' + search20 + '"';
Logger.log (searchFor);
var names =[];
var files = DriveApp.searchFiles(searchFor);
while (files.hasNext()) {
var file = files.next();
var name = file.getName();
names.push(name);
for (var i = 0; i < names.length; i++) {
Logger.log(names[i]);
}
}
Мой скрипт работает хорошо.
Мой вопрос: как мне отформатировать поисковый запрос, чтобы мой сценарий обнаружил все экземпляры переменной (например, имя, которое я ищу), а также избежал ложных срабатываний.
Сценарию иногда не удается найти документы, которые, как мне известно, содержат имя, которое я ищу.
С другой стороны, скрипт иногда возвращает ложные срабатывания.
Ложные срабатывания возникают, когда документ на диске содержит имена и фамилии, которые я ищу, но не подряд.
Например, я ищу «Джон Смит», и скрипт возвращает документ, содержащий имена
Джон Адамс
&
Адам Смит
Есть ли надежный оператор поиска, который мог бы работать? Скрипт не допускает дополнительных кавычек вокруг имени.
Я попробовал Джона * Смита без успеха.
У меня был успех с Джоном / Смитом, но мне все еще не хватает некоторых документов с этим оператором.
Есть идеи?