I'm building a website using Django. The website could have a significant number of users from non-English speaking countries.
I just want to know if there are any technical restrictions on what types of characters an email address could contain.
Are email addresses only allowed to contain English letters, numbers, _
, @
and .
?
Are they allowed to contain non-English alphabets like é
or ü
?
Are they allowed to contain Chinese or Japanese or other Unicode characters?
uppercase and lowercase Latin letters A to Z and a to z ; digits 0 to 9 , provided that top-level domain names are not all-numeric; hyphen - , provided that it is not the first or last character.
Although the traditional format for email header section allows non-ASCII characters to be included in the value portion of some of the header fields using MIME-encoded words (e.g. in display names or in a Subject header field), MIME-encoding must not be used to encode other information in a header, such as an email ...
To use Unicode in certain email header fields, e.g. subject lines, sender and recipient names, the Unicode text has to be encoded using a MIME "Encoded-Word" with a Unicode encoding as the charset. To use Unicode in domain part of email addresses, IDNA encoding must traditionally be used.
Email address consists of two parts local
before @ and domain
that goes after.
Rules to these parts are different:
For local part
you can use ASCII:
Plus since 2012 you can use international characters above U+007F
, encoded as UTF-8.
Domain part
is more restricted:
Regex to validate
^(([^<>()\[\]\.,;:\s@\"]+(\.[^<>()\[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})
Hope this saves you some time.
Well, yes. Read (at least) this article from Wikipedia.
I live in Argentina and here are allowed emails like ñoñó[email protected]
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With