有人知道在Gmail中您是否可以搜索主题中带有感叹号的所有邮件吗?主题。但是搜索!会产生所有消息。我已经尝试过诸如subject:!/!//\!/(/\!/)之类的东西,但是所有这些搜索仅给我所有消息,而不仅仅是主题中带有"!"的消息。

#1 楼

从“关于Gmail搜索”文档中:


Gmail无法识别特殊的搜索字符,例如方括号,括号,货币符号,“&”号,英镑符号和星号。


您似乎已经发现,而我的快速测试似乎也证实了这一点,其中似乎包含了感叹号字符。

我认为正则表达式Google用来将搜索查询与可能的结果进行匹配,只是排除了所有特殊字符,并且仅对“单词字符”进行操作(您可以通过搜索下划线字符_确实起作用来对此进行一定的确认-下划线被视为正则表达式中的单词字符。

评论


谢谢,不是我想听的,但至少我知道我必须为我的需要弄清楚其他事情。

– jankeir
2012年9月20日上午8:09

破折号“-”呢?

–起搏器
2014年4月25日在9:30

搜索中的破折号是NOT运算符。您将无法搜索破折号。

–ale
15年8月29日在16:22

@Google对于一家搜索公司,它确实是系统中的一个巨大漏洞,无法搜索特殊字符。地球上其他所有搜索技术都可以做到这一点,但Google不能做到? isk,t,t ...

– MikeyE
17年12月3日在22:45

#2 楼

借助Google Apps脚本,您可以在Gmail中使用正则表达式来查找主题中带有感叹号的邮件。

可以扩展同一脚本,以将Gmail过滤器应用于与表达式。

更新:这是应帮助您查找相关消息的Apps脚本片段:

var pattern = "^!";
var threads = GmailApp.search("in:inbox");

for (var i = 0; i < threads.length; i++) { 
  var messages = threads[i].getMessages();

  for (var m = 0; m < messages.length; m++) {
      var subject = messages[m].getSubject();
      if (subject.search(pattern) !== -1) 
         Logger.log("https://mail.google.com/mail/u/0/#all/" + messages[m].getId());
  }
}


评论


感谢阿米特(Amit),这是个很好的建议,尽管我担心使用它会使我运行到应用程序脚本配额的数量甚至超过我已经做的事情。

– jankeir
2012年9月25日上午10:20

真正。尽管目前无法想到其他解决方法。

–阿米特·阿加瓦尔(Amit Agarwal)
2012年9月25日上午11:00

对于访问GMail的IMAP邮件客户端来说,这似乎也是一个问题-stackoverflow.com/q/9589583/94687。因此,仅使用外部IMAP客户端进行此类搜索不是解决方案(除非客户端自行进行过滤,而不依赖于服务器对SEARCH的响应)。

– imz-伊万·扎哈拉里舍夫(Ivan Zakharyaschev)
16-09-14在12:11