Какие символы допустимы в e mail
Перейти к содержимому

Какие символы допустимы в e mail

  • автор:

email

где локальная часть(local-part) может быть до 64 символов, а доменное имя(domain) может содержать не более 253 символов. Максимальная длина всего(вместе с символом @) адреса электронной почты(email) = 256 символов.

В локальной части адреса электронной почты можно использовать любой из следующих символов ASCII:

1. Строчные и прописные английские буквы (a–z, A–Z) (ASCII: 65-90, 97-122)

2. Цифры от 0 до 9 (ASCII: 48-57)

3. Символы !#$%&’*+-/=?^_`<|>~ (ASCII: 33, 35-39, 42, 43, 45, 47, 61, 63, 94-96, 123-126)

4. Символ . (точка) (ASCII: 46) при условии, что это не первый и последний символ, а также при условии, что он не появляется два или более раза подряд (например, Brook..Bone@example.com является не допустимым.).

5. Специальные символы разрешены с ограничениями, в том числе:
Пробел и «(),:;<>@[\]
(ASCII: 32, 34, 40, 41, 44, 58, 59, 60, 62, 64, 91-93)

Ограничения для специальных символов заключается в том, что они должны содержаться в кавычках и что перед специальными символами (пробел, обратная косая черта \ и кавычка » (ASCII: 32, 92, 34) должна предшествовать обратная косая черта \ (например, «\»\\\ «).

Строка в кавычках может существовать если она отделена точками или содержит всю локальную часть (например,
abc.»defghi».xyz@example.com или «abcdefghixyz»@example.com допускается.
abc»defghi»xyz@example.com и abc\»def\»ghi@example.com не допускается).

Многие организации ограничивают допустимые символы.

Системы, отправки почты должны быть способны обрабатывать исходящую почту для всех допустимых адресов. В отличие от соответствующих стандартов, некоторые дефектные системы делают некоторых законные адреса недействительными и не в состоянии обслуживать почту для этих адресов. Hotmail, например, отказывается отправлять почту на любой адрес, содержащие любое из следующих стандартах допустимых символов: !#$%*/?^`<|>~

Доменная часть состоит либо из адреса сайта, либо ip буквально, заключеный в квадратные скобки, например, mach@[192.168.2.1], хотя это большая редкость за исключением спама Ж:-)

Правильные адреса электронной почты:

blabla@example.com
bla.bla.bla@example.com
bla.»bla\bla»@example.com
bla.bla.»@».bla.bla@example.com
Bla.»(),:;<>[]».BLA.»blabal@\\\ \» bla».unusual@strange.example.com

bla.example.com (символ @ отсутствует)
bla.@Example.com (символ точки (.) является последним в локальной части)
Bla..123@example.com (символ точки (.) два раза подряд)
b@l@a@example.com (только один @ допускается вне кавычек)
«(),:;<>[ \]@example.com (ни один из представленных символов перед @ не разрешается вне кавычек)
bla»bla»bla@example.com (кавычки должны быть отделены точкой или быть единственным элементом, составляющим локальную часть)

Символы в url и email

Доброго времени суток!
У меня такой вопрос:
— какие символы поддерживаются в url и email?
— какие могут быть?
— все ли символы в utf-8 можно использовать для url и email?

Отслеживать
1,200 8 8 серебряных знаков 26 26 бронзовых знаков
задан 18 апр 2013 в 15:01
noskovgleb noskovgleb
73 2 2 золотых знака 2 2 серебряных знака 6 6 бронзовых знаков
18 апр 2013 в 16:19

Если Вас, по простому, интересует кириллица — то нет, ни в utf-8, ни в какой-либо однобайтной кодировке.

18 апр 2013 в 20:11
stackoverflow.com/a/38787343/2914140. Заодно можно посмотреть, какие бывают email.
15 июн 2021 в 16:24

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

Ниже перечислены символы, которые можно применять в URL для имен контекстов и идентификаторов:

Алфавитно-цифровые символы: a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 Специальные символы: Описание Символ Дефис - Подчеркивание _ Точка . Восклицательный знак ! Тильда ~ Звездочка * Одинарная кавычка ' Открывающая и закрывающая скобки ( ) 

Описание Это регулярное выражение для проверки email адреса. Основные пункты:

1) Разрешены имена пользователей в email с 1 или 2 буквами, а также 3 и более. Разрешены символы «-«, «.», «_» в середине ника пользователя email.

Имя пользователя не может начинаться с символов «-«, «.», «_» или любого не буквенного символа.

2) Разрешены любые иерархические домены. Например: admin.office.com. Правила символов такие же как и в 1-м пункте.

3) Разрешается от 2 до 9 символов в TLD имени домена.

4) Не разрешены адреса с указанием IP.

Проверка адресов электронной почты

Функция проверки адресов доступна в меню «Проверка»/«Проверить». Могут быть выполнены несколько типов проверки адресов электронной почты. Количество используемых методов влияет на качество и полное время процесса проверки e-mail адресов.

Проверить синтаксис
Проверка синтаксиса состоит из проверки адреса электронной почты на наличие символа «@» и на допустимые символы. Допустимые символы: «», «.», «0. 9», «@», «A. Z», «_» и «a. z». Этот метод проверки наиболее быстрый со средней скоростью проверки, достигающей тысяч адресов в секунду. Однако, мы рекомендуем использование этого метода для больших списков адресатов только чтобы удостовериться, что там только правильно написанные адреса. При использовании этого метода подключение к Интернету не требуется.

Проверить домены
Проверка домена выполняется путем соединением с серверами DNS и запросом имени домена адресов электронной почты (например проверяется domain.com для определения существования адреса электронной почты kate@domain.com ). Проверенные домены отмечаются в списке доменов следующим образом:

— если имя домена не существует, или домен существует, но он не имеет записей MX он отмечается как «Домен не существует»
— если имя домена существует и имеет записи MX он отмечается как «Почтовый сервер существует»

Скорость этого действия ниже чем в случае проверки синтаксиса. Этот метод рекомендуется для списков адресов, содержащих сотни тысяч или миллионы адресов электронной почты. Приблизительно одна треть недействительных адресов удаляется на этой стадии проверки.

Проверка e-mail адреса
Полная проверка адресов выполняется путем соединения с почтовым сервером, адрес которого указан в MX записи, которую возвращает DNS сервер путем запросов у этого домена, или напрямую у DNS сервера, в том случае если не была найдена MX запись. После соединения с сервером программа пробует посылать почту проверяемому адресу. Если сервер отвечает на запрос соединения с этим ящиком, электронный адрес помечается как — «Ящик существует» , в обратном случае — как — «Домен не существует». Сеанс связи с сервером SMTP отображен на панели журнала, расположенной справа. Проверка синтаксиса и проверка домена используются до полной проверки SMTP.

Этот тип проверки дает самые реалистичные результаты, однако требуется больше времени для проверки. Метод полной проверки e-mail адресов рекомендуется для списков адресатов не больше ста тысяч. Приблизительно две трети недопустимых адресов удаляются на этой стадии проверки.

Какие символы разрешены в email?

vabka

https://habr.com/ru/articles/224623/
В разных частях адреса разрешены разные символы, и вроде даже зависит от контекста.
Некоторые провайдеры ещё и не полностью эту спецификацию поддерживают.

есть регексп для проверки корректности емайла — погугли.
только увидев не пугайся размеров 🙂
My1Name @My1Name Автор вопроса
Василий Банников, Нет смысла что либо запрещать?

Adamos

My1Name, например, у меня сейчас на столе лежит письмо (бумажное) от потенциального пользователя, который не смог зарегистрироваться на сайте только потому, что указывал почту через & вместо @. Человеку 76 годиков, он путает. Запрещать — имхо, неверно сказано. Стоит указывать, что такого символа в почте не должно быть.

My1Name @My1Name Автор вопроса

Стоит указывать, что такого символа в почте не должно быть.

Это понятно. Вопрос в том, каких символов не должно быть? Было бы здорово написать их все в один список.

vabka

Adamos, если пользователь написал почту через & вместо @, то можно просто сказать, что его почта невалидна по принципу «в почте обязательно есть @»

Для имени ящика в домене (часть до символа @, local-part of an email address) есть различные ограничения, в зависимости от того, является оно квотированным (обрамлённым символами двойной кавычки) или нет, и используется ли SMTPUTF8.

Для имени домена ограничений поменьше. Но их тоже две версии — в квадратных скобках и без них.

Каждый субвариант имеет свой набор разрешений и ограничений, так что регулярка получится слишком могучая. и уж тем более простым списком разрешённых или запрещённых символов не обойтись.

Если всё же есть намерение создать свой верификатор, рекомендую начать со статьи «Email address» в англоязычной вики. К тому же там достаточно неплохо собраны ссылки на необходимые материалы.

если пользователь написал почту через & вместо @, то можно просто сказать, что его почта невалидна по принципу «в почте обязательно есть @»

В общем случае утверждение неверное. При отсутствии этого символа и домена сервер обязан считать, что письмо предназначено для внутридоменной пересылки. Правда, многие «большие» серверы этим пренебрегают.

vabka

My1Name,
Разрешённые, получается
Все буквы латинского алфавита, цифры от 0 до 9, спецсимволы «!#$%&’*+-/=?^_`<|>~»(),:;<>@[\]», кавычки, пробел, круглые скобки, точка, табуляция, любой печатаемый символ ascii (даже псевдографика), могут быть переносы строк, и даже несколько собак, international characters above U+007F
И это только про «local part»

The local-part of the email address may be unquoted or may be enclosed in quotation marks.

If unquoted, it may use any of these ASCII characters:

uppercase and lowercase Latin letters A to Z and a to z
digits 0 to 9
printable characters !#$%&’*+-/=?^_`<|>~
dot ., provided that it is not the first or last character and provided also that it does not appear consecutively (e.g., John..Doe@example.com is not allowed).

If quoted, it may contain Space, Horizontal Tab (HT), any ASCII graphic except Backslash and Quote and a quoted-pair consisting of a Backslash followed by HT, Space or any ASCII graphic; it may also be split between lines anywhere that HT or Space appears. In contrast to unquoted local-parts, the addresses «.John.Doe»@example.com, «John.Doe.»@example.com and «John..Doe»@example.com are allowed.

The maximum total length of the local-part of an email address is 64 octets.[8]

Space and special characters «(),:;<>@[\] are allowed with restrictions (they are only allowed inside a quoted string, as described in the paragraph below, and in that quoted string, any backslash or double-quote must be preceded once by a backslash);
Comments are allowed with parentheses at either end of the local-part; e.g., john.smith(comment)@example.com and (comment)john.smith@example.com are both equivalent to john.smith@example.com.
In addition to the above ASCII characters, international characters above U+007F, encoded as UTF-8, are permitted by RFC 6531 when the EHLO specifies SMTPUTF8, though even mail systems that support SMTPUTF8 and 8BITMIME may restrict which characters to use when assigning local-parts.

A local-part is either a Dot-string or a Quoted-string; it cannot be a combination. Quoted strings and characters, however, are not commonly used.[citation needed] RFC 5321 also warns that «a host that expects to receive mail SHOULD avoid defining mailboxes where the Local-part requires (or uses) the Quoted-string form».

The local-part postmaster is treated specially—it is case-insensitive, and should be forwarded to the domain email administrator. Technically all other local-parts are case-sensitive, therefore jsmith@example.com and JSmith@example.com specify different mailboxes; however, many organizations treat uppercase and lowercase letters as equivalent. Indeed, RFC 5321 warns that «a host that expects to receive mail SHOULD avoid defining mailboxes where . the Local-part is case-sensitive».

Despite the wide range of special characters which are technically valid, organisations, mail services, mail servers and mail clients in practice often do not accept all of them. For example, Windows Live Hotmail only allows creation of email addresses using alphanumerics, dot (.), underscore (_) and hyphen (-).[9] Common advice is to avoid using some special characters to avoid the risk of rejected emails.[10]

According to RFC 5321 2.3.11 Mailbox and Address, «the local-part MUST be interpreted and assigned semantics only by the host specified in the domain of the address». This means that no assumptions can be made about the meaning of the local-part of another mail server. It is entirely up to the configuration of the mail server.

Interpretation of the local-part is dependent on the conventions and policies implemented in the mail server. For example, case sensitivity may distinguish mailboxes differing only in capitalization of characters of the local-part, although this is not very common. Gmail ignores all dots in the local-part of a @gmail.com address for the purposes of determining account identity.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *