如何检查 Gmail 标签是否有嵌套的子标签?
How to check if a Gmail label has a nested sub-label?
使用 Google Apps 脚本,是否有检查 Gmail 标签是否有嵌套子标签的功能?如果一个标签有一个或多个子标签,我想将它们从代码序列中排除。
没有从 "parent" 标签获取标签的直接方法,但使用简单的 getUserLabels()
方法 documented here 获取标签非常简单,并通过以下小代码进行说明:
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(例如但不仅限于)视为标签,这不是您真正想要的,但那部分将是只需几个条件即可轻松管理。
使用 Google Apps 脚本,是否有检查 Gmail 标签是否有嵌套子标签的功能?如果一个标签有一个或多个子标签,我想将它们从代码序列中排除。
没有从 "parent" 标签获取标签的直接方法,但使用简单的 getUserLabels()
方法 documented here 获取标签非常简单,并通过以下小代码进行说明:
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(例如但不仅限于)视为标签,这不是您真正想要的,但那部分将是只需几个条件即可轻松管理。