Label and filter Gmail threads using basic RegEx against the email body or headers.
var filters = [
// star emails deliveredto [email protected]
{ name: 'user emails', match: /deliveredto:[email protected]/, star: true },
// organize by list name
{ match: /(?:List-ID:\s(.+?)\s<)/, archive: true },
// label all emails with "bank" in the subject as "finance" and mark as read
{ name: 'finance', subject: 'bank', markRead: true },
];
name
- The label name to apply when matched. This can also be nested by adding slashesfolder/name
. If no name is set, it will use the first RegEx selector result (.+?)match
- The RegEx to match against. This searches the entire raw contents of the email, including the header. Include a RegEx selector to return dynamic label names (.+?)subject
- Helper to search the subject for textarchive
- true/false to archive the matching emailsstar
- true/false to star the matching emailsmarkRead
- true/false to mark the matching emails as read
var from = [
"from:[email protected]",
"list:subscription.domain.com"
];
This can be any combination of Gmail filters to apply the labels against.
You'll need to enable Google App Scripts in your Google Drive account