如果我有多个与同一封电子邮件匹配的过滤器,是否都将对它们进行处理?如果是这样,将以什么顺序处理它们?如果第一个匹配的过滤器修改了电子邮件以使其匹配(或不再匹配)其他过滤器怎么办?

#1 楼

我刚刚尝试过,看来它们按照列表中定义的顺序发生了:

如果您有:


星型电子邮件from:foo

将标签应用到is:starred


...,然后它将标签应用到邮件。如果您撤消订单,则不会。

评论


需要注意的是,当您有多个跳过收件箱的过滤器时,将按顺序处理过滤器,但是每封邮件在处理之前都要先受所有过滤器的约束。

– isuldor
2012年8月28日在17:19

#2 楼

我有两个过滤器A和B,以及两个标签A和B。如果过滤器A适用于电子邮件,则我希望将标签A应用于电子邮件,并希望该电子邮件跳过收件箱并被存档。

我也想对过滤器B做同样的事情,但是如果标签A被应用,我不希望标签B被应用。

事实证明这可以完成。


在过滤器B中调节过滤器,使其显示为-label:[FilterA] AND [ rest of filter B ]。如果已应用标签A,这将导致绕过过滤器B。
确保在列表中过滤器A之后列出过滤器B。如果不是这种情况,只需打开过滤器B并重新保存即可。

请注意,建议不要使用Gmail抛出一条有关将“标签”用作过滤器的消息,因为这会导致过滤器无法适用于任何传入消息。我只是忽略了它,这似乎奏效了。

评论


太棒了,这就是我想知道的!

– Hiro2k
16 Mar 20 '16在9:51

如果有多个可能的标签可以应用,而您只想要其中一个,则可以概括为:nouserlabels和<其他任何内容>。例如。我将来自学校的电子邮件过滤成许多类别,然后对所有来自以下内容的邮件进行过滤:(school.edu)和具有:nouserlabels。只要确保所有优先级更高的标签出现在列表的前面即可。

–内森(Nathan)
19年3月19日在17:25

#3 楼

bbodiens注释的唯一例外(我将要发布几乎完全相同的答案!)是,人们希望“标记为已读”和“已归档”消息实质上跳过进一步的过滤,但事实并非如此。

为了测试这一点,我设置了两个测试过滤器,一个过滤器将带有主题“ testing”的传入邮件标记为test1并将其存档,另一个设置在“ testing”的过滤器中标记test2。

邮件已存档并标记了两次,因此看来过滤器是并发的。

评论


错误的测试和不正确的结论-1

–丹·罗森斯塔克(Dan Rosenstark)
2010-11-29 20:58

我发现我的过滤器也是并发的.. @Yar,您能解释一下如何避免这种情况吗?

–farinspace
13年8月19日在14:56

@farinspace过滤器上没有东西可以“不处理其他过滤器”吗?

–丹·罗森斯塔克(Dan Rosenstark)
2013年9月18日下午16:21

@Yar我很想知道在哪里可以找到该设置。

– sxu
2014年2月20日在17:27

不幸的是,@ sxu无法做到这一点。除非有东西移到垃圾桶,否则所有过滤器都会按顺序应用。

–丹·罗森斯塔克(Dan Rosenstark)
15年3月17日在21:59

#4 楼

任何匹配的GMail过滤器规则都将运行并执行其操作。

我不确定是否可能创建可能冲突的规则。可用的过滤条件是:




主题
包含单词
不包含单词
具有附件

您无法通过可用的过滤器操作来影响其中的任何一个,所以我看不到一个规则如何运行,然后以某种方式阻止该消息与另一个过滤器匹配来影响消息它以前会匹配的。

评论


您可以在邮件中添加标签,并具有使用label:的过滤器,请参阅此问题。

–有道理
2010年7月7日在22:25

另请参阅我的答案,其中显示了此示例。

–有道理
2010年8月3日0:00

#5 楼

来自Gmail帮助:


有趣的事实:这些操作将按照其列出的顺序进行-例如,您可以选择将匹配的邮件转发到
特定的电子邮件地址,然后删除邮件。


评论


这个“有趣的事实”与多个过滤器的顺序无关,而是与同一过滤器中的多个动作的顺序有关。看起来确实按照列出的顺序处理了过滤器,但是文档并未说明。

–user79865
15年8月2日在17:26



-1。正如@NormalHuman指出的那样,此“答案”不能回答问题。

–鲁本♦
2015年8月4日在2:26

#6 楼

我认为这两个过滤器按此顺序将导致电子邮件保留在收件箱中:

如果从foo@bar.com发送,则跳过收件箱。
如果从@ bar.com发送,则从不发送邮件将其发送给垃圾邮件。

评论


即使这个答案有点题外话,也感谢您将其放在此处。我遇到了这种确切的非直觉行为。

–dpb
2014年12月12日18:16

#7 楼

我遇到了一个时髦的错误,其中过滤器的顺序有所不同:

过滤器1:
将标签“ Foo”应用于“ foo-sender”的邮件

过滤器2:
将标签“ Bar”应用于除“ foo-sender”中的邮件以外的所有邮件。

如果我在过滤器定义中完全指定了电子邮件地址,包括域(“ foo-sender@domain.com”),则顺序无关紧要。但是,如果我只是在过滤器定义中提供不带域的用户名(只是普通的“ foo-sender”),则两个标签都将错误地应用于“ foo-sender”中的邮件。仅当我颠倒过滤器的顺序时,它才有效。

我认为这只是一个错误,而不是功能。

#8 楼

如果您有多个过滤器,每个过滤器都可以作为操作来应用标签,则所有匹配过滤器的所有标签都将应用于电子邮件。