#google-apps-script #gmail
#google-apps-script #gmail
Вопрос:
Позволяет ли Google apps script обрабатывать определенные адреса gmail с тегом / расширением » » в адресе? У меня есть скрипт для извлечения графических вложений и перемещения их в папку на диске, и я хотел бы сфокусировать его на определенных тегах.
Комментарии:
1. Я ищу документацию по тегам Gmail. Ничего не имело смысла.
Ответ №1:
Вы можете использовать регулярное выражение с match
Используя этот пример функции:
function getPlusMails() {
// get all inbox threads
let threads = GmailApp.getInboxThreads()
// initializing the output array
let messagesFromPlus = []
// for each thread in inbov
let messages = threads.forEach(t => {
// get the messages
let _messages = t.getMessages()
// for each message in thread
_messages = _messages.forEach(m => {
// check if sender has in address, if so, add to output array
if (m.getFrom().match(/ /)) messagesFromPlus.push(m)
})
})
return messagesFromPlus
}
Вы можете получить список всех сообщений, для которых у отправителя есть адрес
.
Как это работает
Он использует собственный JavaScript string.match()
, чтобы узнать, есть ли в адресе отправителя сообщения
.
if ( message.getFrom().match(/ /) )
Это вернет true
, если есть
, а false
если нет. В приведенной выше функции запрашиваются все потоки в папке «Входящие», хотя вы можете сузить это, если хотите, с помощью поисковых запросов. Затем проверяется каждое сообщение в каждом потоке. Если адрес отправителя содержит a
, он добавляется в список messagesFromPlus
.
Вы можете вызвать это из другой функции, а затем просмотреть каждое сообщение, делая с ними то, что вам нужно.