Я хотел бы использовать новый элемент <input type="email" />
. Я хотел бы иметь Java-код, который реализует ту же проверку на сервере, что и в браузере.
Спецификация HTML5 определяет адреса электронной почты в ABNF как:
1*( atext / "." ) "@" ldh-str *( "." ldh-str )
где:
<ldh-str> ::= <let-dig-hyp> | <let-dig-hyp> <ldh-str>
<let-dig-hyp> ::= <let-dig> | "-"
<let-dig> ::= <letter> | <digit>
<letter> ::= any one of the 52 alphabetic characters A through Z in upper case and a through z in lower case
<digit> ::= any one of the ten digits 0 through 9
и:
atext = ALPHA / DIGIT / ; Printable US-ASCII
"!" / "#" / ; characters not including
"$" / "%" / ; specials. Used for atoms.
"&" / "'" /
"*" / "+" /
"-" / "/" /
"=" / "?" /
"^" / "_" /
"`" / "{" /
"|" / "}" /
"~"
Это не те же правила, что и в RFC 5322. Как проверить, соответствует ли адрес этим правилам Java?
Спасибо!