Gmail 搜索(Search)和过滤器(Filter)的逻辑运算(Boolean operators)

为何要用逻辑运算(Boolean operators)

  • 如果想要把发往foo@bar1.com或foo@bar2.com,主题里面包含”任务”打上“task”的标签而不是foo@bar1.com或foo@bar2.com的标签,这该怎么办呢?
  • 如果想要把和同学a(a@bar.com)以及同学b(b@bar.com)讨论makefile相关问题的邮件全都找出来,那又该怎么办呢?

这时逻辑运算就有了用武之地。

Search和Filter的表达式位置
如果要制作条件比较复杂的Filter或者对邮件进行更为精确的搜索,那么就要书写复杂一点的高级逻辑表达式。表达式对Filter和Search都是通用的,只是写的位置不同:

  • Search的表达式要写在Search Mail的编辑框内
  • Filter的表达式要写在Has the words后面的编辑框内


逻辑运算符(Boolean operators)

Gmail官方有相关的帮助还有一张逻辑运算符的表格,这将是我们写运算表达式的重要依据。表格很详细的列举了所有可以使用的运算符和用法以及例子。这里只着重介绍几个重要而常用的。

  • 空格:用空格隔开表示的关系
  • OR:用OR隔开表示关系
  • - :用 - 做为前缀表示
  • is:chat:搜索范围为聊天记录
  • ():它的作用就不言而喻了
  • ……


例子(Example)

回到开头提到的问题,很容易就写下他们的答案了。对于过滤器的要求需要写三个表达式。

  • 标签task对应表达式Filter1:“(to:foo@bar1.com OR to:foo@bar2.com) subject:任务”
  • 标签foo@bar1.com对应表达式Filter2:“(to:foo@bar1.com) -subject:任务”
  • 标签foo@bar2.com对应表达式Filter3:“(to:foo@bar2.com) -subject:任务”

第二个表达式是为了避免同时打上task和foo@bar1.com的情况。
对于第二个问题,只需要使用下面的表达式

  • (from:a@bar.com OR to:a@bar.com OR cc:a@bar.com bcc:a@bar.com) (from:b@bar.com OR to:b@bar.com OR cc:b@bar.com bcc:b@bar.com) subject:makefile

为了搜索更为准确,你还可以用这些运算符组成更为复杂的表达式。

后话
Gmail 提供的逻辑运算已经很强大了,不过我觉得 Filter 有点疏漏,缺少了一般的过滤器都有的两点功能:1、能够为过滤器进行排序;2、如果以及符合一个过滤器可以选择不再继续查找其他过滤器。如果有这两点功能的话,我们的Filter2和Filter3就不用那么麻烦了。

Posted by 王永杰 in 网络应用
10 12月

没有评论 »

还没有评论。

发表评论