Как работает фильтрация e-mail адреса в gmail

    Основные принципы соответствия


    Простым критерием проверки соответствия является Гугл поиск.
    Вы должны вводить полные слова, т.к. не существует производных слов (например, joh не будет соответствовать john.smith@gmail.com). Тоже справедливо и для множественного числа (например, app не будет соответствовать apps@example.com).

    Порядок слов не имеет значения, если они не заключены в кавычки (например, «smith john» не будет соответствовать john.smith@gmail.com). Как правило, символы игнорируются (см. ниже).

    Слова разбиваются, кроме букв, цифр и символов подчеркивания. Самыми распространенными символами для разбивки слов являются +.@. Это означает, что foo не будет соответствовать foo_bar@example.com, но будет соответствовать foo+bar@example.com. Знак @ не считается за слово и может быть пропущен (например, «smith gmail» будет соответствовать john.smith@gmail.com).

    Вы можете использовать оператор OR в дополнение к группировке() для некоторых сложных условий.

    Поведение символов


    Когда вы вводите символы в окне фильтра, то они как правило ведут себя по разному:
    • Символы, которые действуют как x y: ~#$%^*+;",<>? и знак ударения*. Например, smith~john становится smith john, который соответствует john.smith@gmail.com.
    • Символы, которые действуют как «x y»: -=\:'./. Например, john-smith становится «john smith», который соответствует john.smith@gmail.com.
    • Символы, которые трактуются буквально: &_. Например, john_smith будет соответствовать john_smith@gmail.com, но не john.smith@gmail.com.
    • Специальные символы: !@()[]{}|:
      • !: john!smith становится john -smith, что соответствует john.foo@gmail.com, но не john.smith@gmail.com;
      • @:
        • @ удаляется в конце слова. Например, john@ становится john, что соответствует john.smith@gmail.com;
        • @ удаляется в начале слова. Например, @ foo.com** станет foo.com, что соответствует john+foo.com@gmail.com;
        • @ используемый в середине слова, как правило требует полного адреса для успешного поиска. Например, john.smith@gmail не будет соответствовать john.smith@gmail.com. Кроме того, символы будут восприниматься буквально. Например, для поиска john.smith@gmail.com необходимо использовать john.smith@gmail.com, john-smith@gmail.com и john~smith@gmail.com не будут работать;
        • @ используемый в разных местах в середине слова, имеет странное поведение. Например, когда мы пытаемся найти john.smith@gmail.com, то при:
          • john@smith@gmail@com — не найдется;
          • gmail@com — не найдется;
          • @ gmail@com — не найдется**;
          • smith@gmail@comнайдется;
          • smith@gmail.com — не найдется;
          • «john smith@gmail.com» — не найдется;
          • «john.smith@gmail com» — не найдется;


      • | действует как оператор OR.
      • Скобки служат для группировки в операторах OR и AND.


    Другие примеры поведения


    Аккаунт, который вы используете по умолчанию (например, john.smith@gmail.com) будет соответствовать всем вариантам вашего адреса, если вы используете в нем точку, знак + или домен googlemail.com.

    Вот краткое описание каждого способа:
    • Использование точки: Вы можете вводить сколько угодно точек в вашем адресе электронной почты. Например, если ваш адрес — john.smith@gmail.com, то почта, отправленная на j.o.h.n.s.mith@gmail.com придет на ваш адрес;
    • Использование знака +: После имени вашего аккаунта вы можете использовать знак "+" и любой текст. Например, почта, отправленная на адрес john.smith+foo@gmail.com придет на john.smith@gmail;
    • Использование домена googlemail.com: Любая почта, отправленная на адрес вашего аккаунта типа <your-gmail-account>@googlemail.com придет на ваш адрес с доменом @ gmail.com**. Например, почта, отправленная на john.smith@googlemail.com придет на john.smith@gmail.com.

    Способы представления адреса можно комбинировать друг с другом, например, j.o.h.n.s.m.i.t.h+foo.bar@googlemail.com = john.smith@gmail.com.

    Интересные последствия


    1. Невозможно сравнить все ваши гугл адреса, в которых используется точка.
    Если у вас вошло в привычку использовать точку в вашем адресе электронной почты для предотвращения спама (например, j.ohn.smith@gmail.com), то вы не сможете легко создать фильтр для всех версий вашего адреса с точкой, т.к. они разделяются в этом случае на отдельные слова (j ohn smith).
    Когда у вас только один вариант с точкой, то фильтр (например, для спама) создать легко. Однако, если вы начинаете использовать разные варианты с точкой (например, jo.h.n.smi.th@gmail.com), то это станет причиной появления разных слов в адресе (например, jo h n smi th), что заставит вас создать различные условия для каждого варианта.

    2. Символ + хуже чем оператор "" при сравнении адресов со знаком "+".
    Если вы пытаетесь создать фильтр для адреса, в котором используется +, то лучше всего использовать полный адрес в фильтре (например, john.smith+foo@gmail.com).
    Если, по какой-нибудь причине, вы не используете полный адрес, то следует иметь ввиду, что оператор + на самом деле хуже, чем оператор "". Например, использование john+foo хуже, чем «john foo», поскольку первый вариант будет соответствовать foo@john.com.
    Имейте ввиду, что последний вариант не является панацеей, т.к. будет найден foo@john.foo.com. Он просто гарантирует правильный порядок слов. Для ясности, вы могли бы использовать «john+foo», но в действительности это тоже самое, что и «john foo».

    3. Вы должны использовать отрицание, чтобы найти все адреса с "+", на которые была отправлена почта.
    Чтобы отфильтровать все адреса, в которых используется + (например, чтобы отправить их в спам), вам следует использовать запрос вида john.smith@gmail.com -«john smith gmail com». Первая часть запроса найдет все адреса, в которых есть знак +. Вторая часть удалит все адреса, в которых нет слов в том же порядке. Например, john.smith+foo@gmail.com не будет найден, поскольку имеет слово foo между другими словами.
    Обратите внимание, что есть один странный и маловероятный случай, когда это не будет работать: john.smith+john.smith.gmail.com@gmail.com, поскольку имеет слова в строго заданном порядке.

    Примечания


    * — имеется виду символ `, но к сожалению применения его нет у автора;
    ** — использовать без пробела, т.к. хабр форматирует в хабрапользователя.

    Источник
    Документация по теме

    Средняя зарплата в IT

    110 000 ₽/мес.
    Средняя зарплата по всем IT-специализациям на основании 8 355 анкет, за 2-ое пол. 2020 года Узнать свою зарплату
    Реклама
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее

    Комментарии 11

      +1
      Пожалуйста, причешите статью немного. Местами уж больно глаза режет «машинность» перевода.
        0
        Сорри, но перевод ручной и проверенный с носителем языка.
          0
          «когда вы начинаете использовать разные варианты использования точки » — «Использовать варианты использования» это тавтология, к примеру. И порядок слов явно остался из оригинала: по русски предложения строятся иначе.
            +1
            Согласен, пропустили видимо. «Причесал».
          • НЛО прилетело и опубликовало эту надпись здесь
              0
              Как показывает практика для качественного перевода нужен не носитель исходного языка, а носитель целевого языка. Проблемы возникают именно в целевом языке. Поэтому ценятся переводы сделанные профессиональными писателями, а не профессиональными переводчиками.
              +1
              Как тяжело становиться жить… когда только одна функция, одного сайта, одной компании требует запоминания двух листов текста.
                0
                Это продвинутое использование. Я не пользуюсь ничем из вышеописанного и всё равно gmail как почтовый клиент и сервис меня устраивают более чем.
                  0
                  Тут я несколько иронизировал. Но общий смысл все равно остается — темп жизни и насыщенность информацией, как мне кажется, с каждым годом все повышается. И уже «приходится бежать со всех ног, чтобы только остаться на том же месте»…
                0
                Тема топика по первому абзацу совершенно неясна
                  0
                  Может быть, на Хабре уже есть свежие статьи на эту тему, но мне не попалось.
                  Отфильтровать все письма на дополнительные ящики в отдельную папку, текущая версия:
                  john.smith@gmail.com -{«john smith gmail com»}

                  Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                  Самое читаемое