Как обновить следующее регулярное выражение, чтобы разрешить все специальные символы, кроме «@» в дескрипторе электронной почты.Email Regex, чтобы разрешить специальные символы
"[a-zA-Z0-9._-][email protected][a-zA-Z0-9._-]+\\.+[a-z._-]+"
Как обновить следующее регулярное выражение, чтобы разрешить все специальные символы, кроме «@» в дескрипторе электронной почты.Email Regex, чтобы разрешить специальные символы
"[a-zA-Z0-9._-][email protected][a-zA-Z0-9._-]+\\.+[a-z._-]+"
Вы можете использовать:
^[^@][email protected][a-zA-Z0-9._-]+\\.+[a-z._-]+$
[^@]+
будет соответствовать более 1 ничего, но @
Добавить специальные символы внутри '[]'.
например. для добавления поддержки двоеточия
изменения "[a-zA-Z0-9._-][email protected][a-zA-Z0-9._-]+\\.+[a-z._-]+"
в "[a-zA-Z0-9._-:][email protected][a-zA-Z0-9._-]+\\.+[a-z._-]+"
Для получения более подробной информации проверить valid email addresses на википедии. Также, RFC 5321, 5322 - хорошая идея.
Я считаю это разумным способом ..
# http://www.w3.org/TR/html5/forms.html#valid-e-mail-address
# ^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-][email protected][a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$
^
[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+
@
[a-zA-Z0-9]
(?:
[a-zA-Z0-9-]{0,61}
[a-zA-Z0-9]
)?
(?:
\.
[a-zA-Z0-9]
(?:
[a-zA-Z0-9-]{0,61}
[a-zA-Z0-9]
)?
)*
$
Что знак $ в конце? – Amanni
'^' и '$' являются якорями для утверждения начальных и конечных позиций. – anubhava
Работал, когда я взял оба якоря. – Amanni