Шукайте в темі Gmail спеціальні символи типу "!"


30

Хтось знає, чи в Gmail можна шукати всі повідомлення, які мають тему оклику?

Я хотів би створити фільтр, який додає червону !мітку до повідомлень, які мають тему оклику. Але пошук subject:!результатів у всіх повідомленнях. Я намагався що - щось на зразок /!/, /\!/, (/\!/), "!", але всі ці пошуки просто дати мені всі повідомлення, а не тільки тих , хто !в темі.

Відповіді:


18

З документації " Про пошук у Gmail ":

Gmail не розпізнає спеціальні пошукові символи, такі як квадратні дужки, круглі дужки, символи валюти, амперсанд, знак фунта та зірочки.

Оскільки, здається, ви вже виявили, і мої швидкі випробування підтверджують, що це, мабуть, включає знак оклику.

Я б припустив , що регулярний вираз Google використовується для відповідності пошукових запитів з можливими результатами просто виключають все спеціальні символами і працюю тільки на «символах слова» (ви можете кілька підтвердити це тим , що шукає символ підкреслення, _, зробити роботу - Підкреслення трактується як символ слова в регулярному виразі).


1
Дякую, не те, що я хотів почути, але, принаймні, я знаю, що мені доведеться розібратися ще щось для моїх потреб.
Янкейр

А як тире "-"?
Pacerier

Тире в пошуку - NOTоператор. Ви не зможете знайти в тирі.
але

1
@Google для пошукової компанії, це справді ВЕЛИЧЕЗНА ДРУЖКА у вашій системі, яка не може шукати спеціальних символів. Усі інші пошукові технології на планеті можуть це зробити, але не Google ?? tisk, tisk, tisk ...
MikeyE

11

За допомогою Google Apps Script ви можете використовувати регулярні вирази в Gmail, щоб знайти повідомлення, які мають тему оклику.

Цей же сценарій можна розширити, щоб застосувати фільтри Gmail до повідомлень, які відповідають виразу.

Оновлення. Ось фрагмент програмного сценарію, який допоможе вам знайти відповідні повідомлення:

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());
  }
}

Спасибі Аміт, хороша пропозиція, хоча я побоююся, що використання його змусить мене набігти на квоту сценаріїв додатків навіть більше, ніж я вже роблю.
Янкейр

Правда. Не можу придумати жодного іншого вирішення, хоча в цей час.
Аміт Агарвал

Здається, це також проблема для поштових клієнтів IMAP, які отримують доступ до GMail - stackoverflow.com/q/9589583/94687 . Таким чином, просто використовувати IMAP-клієнт для таких типів пошуку не є рішенням (якщо клієнт не здійснює фільтрацію сам, не покладаючись на відповіді сервера SEARCH).
imz - Іван Захарящев
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.