Ważna długość adresu e-mail

1948865 s

Musiałem dziś trochę poszperać, aby go znaleźć, ale czy wiesz, jaka jest prawidłowa długość adresu e-mail? W rzeczywistości jest podzielony na części… Imię@domena.com. To jest zgodne z RFC2822.

  1. Nazwa może mieć od 1 do 64 znaków.
  2. Domena może mieć od 1 do 255 znaków.

Wow… to oznacza, że ​​może to być prawidłowy adres e-mail:


loremaipsumadolorasitaametbaconsectetueraadipiscin
gaelitanullamc @ loremaipsumadolorasitaametbaconsect
etueraadipiscingaelitcaSedaidametusautanisiavehicu
laaluctuscaPelentesqueatinciduntbadiamaidacondimn
tumarutrumbaturpisamassaaconsectetueraarcubaeuatin
ciduntaliberoaaugueavestibulumaeratcaFaselusatyna
ciduntaturpisaduis.com

Spróbuj umieścić to na wizytówce! Jak na ironię, większość pól adresu e-mail jest ograniczona do 100 znaków w Internecie. To właściwie nie jest poprawne. Jeśli chcesz sprawdzić poprawność adresu e-mail pod kątem prawidłowej konstrukcji przy użyciu PHP, znalazłem ten fragment w sieci:

http://derrick.pallas.us/email-validator/ # Licencja: Academic Free License 2.1 # Wersja: 2006-12-01a if (! ereg (''. '^'. '[-! # $% & \ '* + / 0-9 =? AZ ^ _a-z {|} ~]'. '(\\.? [-! # $% & \' * + / 0-9 =? AZ ^ _a-z { |} ~]) * '.' @ '.' [a-zA-Z] (-? [a-zA-Z0-9]) * '.' (\\. [a-zA-Z] (- ? [a-zA-Z0-9]) *) + '.' $ ', $ email)) return false; list ($ local, $ domain) = split ("@", $ email, 2); if (strlen ($ local)> 64 || strlen ($ domain)> 255) return false; if ($ check &&! gethostbynamel ($ domain)) return false; powrót prawda; # KONIEC ###### }

Komentarze 9

  1. 1

    Cieszę się, że ktoś uznał to za przydatne! Wyszukiwanie w Google „wyrażenia regularnego e-mail” ujawnia wiele wyrażeń regularnych, które nie są synchronizowane ze specyfikacją RFC.

  2. 2

    Tak, zauważyłem również brak zgodności innych rozwiązań z RFC. Zauważyłem jednak, że nawet to wyrażenie regularne jest nietypowe i nie jest standardem. Pamiętam, że czytanie rzeczywistego wyrażenia regularnego (zezwalanie na <,> itd.) Jest zbyt intensywne dla większości procesów.

    Jest jednak napisany zwięźle i zdecydowanie jest rozwiązaniem, które powinno być akceptowalne dla każdej korporacyjnej aplikacji pocztowej.

    Dzięki jeszcze raz!
    Doug

  3. 3

    Niestety, połączyłem tę stronę z niewłaściwym RFC (2821 zamiast 2822), ale zostało to poprawione. Nawiasy ostre nie mogą być częścią części lokalnej ani domeny adresu e-mail; reprezentują raczej punkty tokenizacji, tj. mogą być używane do otaczania adresu e-mail (na przykład w czytniku poczty) właśnie dlatego, że nie mogą być częścią adresu.

    Jedna rzecz, której moja funkcja nie robi, to martwienie się o cytowaną formę adresów e-mail - gdzie lokalna część pojawia się w podwójnych cudzysłowach - ponieważ RFC2821 zasadniczo mówi, że nikt nie powinien nigdy musieć pisać swojego adresu w ten sposób. (Uważam, że formularz jest zgodny ze starszymi wersjami i jest teraz złą praktyką).

  4. 4
  5. 5

    W RFC 2821 istnieje ograniczenie dotyczące długości adresu w poleceniach MAIL i RCPT o długości 256 znaków. Za górną granicę długości adresu przyjmuje się zwykle 256.

    - Źródło: RFC 3696 Errata

    Ponadto, ponieważ RFC 2181 mówi, że „pełna nazwa domeny jest ograniczona do 255 oktetów”, jest ona wielokrotnie błędnie interpretowana przez ludzi (w tym autorów innych dokumentów RFC), co oznacza, że ​​nazwy domen mogą mieć 255 znaków. Ale RFC2181 mówi o reprezentacji na poziomie protokołu DNS w sieci, a nie o znakach drukowalnych.

    Maksymalna długość nazwy domeny to 253 znaków (254 łącznie z kropką końcową, 255 oktetów na przewodzie z końcowym zerem). I to właśnie wdrażają BIND i DiG.

  6. 6
  7. 7

    Przepraszamy, powyższy adres URL jest uszkodzony…

    Programiści, którzy nie docenili potencjalnych rozmiarów adresów e-mail, spowodowali kilka problemów:

    http://www.eph.co.uk/resources/email-address-leng...

    Domyślam się, że jeśli Twój adres e-mail to coś malutkiego, na przykład „jack1983@aol.com”, możesz pomyśleć, że nawet 30 znaków jest hojne.

  8. 8

Co o tym myślisz?

Ta strona używa Akismet do redukcji spamu. Dowiedz się, jak przetwarzane są dane komentarza.