使用Google Apps Script,是否有一种可以检查Gmail标签是否具有嵌套子标签的函数?如果一个标签有一个或多个子标签,我想将它们从代码序列中排除。
从“父级”标签中获取标签没有直接的方法,但使用简单的getUserLabels()
方法很容易获取,该方法在此处有文档说明并通过下面的小代码进行说明:
function getAllLabels(){
var results = [];
var labels = GmailApp.getUserLabels();
for (var i = 0; i < labels.length; i++) {
Logger.log("label: " + labels[i].getName());
results.push(labels[i].getName());
}
for (var i = 0; i < results.length; i++) {
if(results[i].indexOf('/')>0){Logger.log(results[i]+' has a subLabel')};
}
}
这将显示您所有标签的列表,从第二个循环开始,您将获得至少有一个子标签的所有标签的列表。
请注意,此脚本必须进行改进,因为它将考虑INBOX(例如,但不仅限于此)作为标签,而这并不是您真正想要的,但使用一些条件很容易管理该部分。