Я завжди був припущенням, що браузер-перевірка електронної пошти-регекс є більш надійним, ніж деякий шаблон регулярного вираження в JS / PHP.
Мій роботодавець щойно показав мені, що обидва рядки вважаються правильними (нарешті, у FF28):
test@test.com // Expected to be true, is true
test@test // Expected to be false, is true
Чому остання правда? Це помилка чи щось на майбутнє? Тому що, наскільки я можу сказати, неправильно не використовувати розширення (крім, можливо, локальних хостів).
Хто може пролити про це трохи світла?
<input type="email" />
це корисно лише для мобільних веб-сайтів, так що більшість клавіатур відображатиметься з відповідним дисплеєм (з @
клавішею та деякими .com
комбінаціями клавіш…).
pattern
test@test
це дійсна адреса електронної пошти ... вона трактується test
як tld
. Так само, як test@com
і дійсна адреса електронної пошти для com
tld ... tools.ietf.org/html/rfc2822#section-3.4.1