[英]Email Address Validation Regex
所以我想設置一個具有以下約束的 Email 地址驗證正則表達式......
參考: α
@ β
。 γ
對於α
1) 僅包含az
0-9
.
-
_
2) 包含 1 到 30 個字符(含)
3) 不能以 . 開頭或結尾.
-
_
4) 不能有 2 個連續的符號(超出.
-
_
)
對於β
1) 只包含az
0-9
-
2) 包含 2 到 14 個字符(含)
3) 不能以-
開頭或結尾
4) 不能有 2 個連續的-
在里面
對於γ
1) 只包含az
2) 包含 2 到 4 個字符(含)
==================================================== ==========================
每個的前兩個約束很容易實現,所以我做了,如下([a-z0-9.\-_]{1,30})@([a-z0-9\-]{2,14}).([az]{2,4})
誰能幫我解決α
和β
的(2)和(3)
您可以使用
/^(?=[^@]{1,30}@)[a-z0-9]+(?:[._-][a-z0-9]+)*@(?=.{2,14}\.[a-z]+$)[a-z0-9]+(?:-[a-z0-9]+)*\.[a-z]{2,4}$/
查看正則表達式演示
細節
^
- 字符串的開頭(?=[^@]{1,30}@)
- 在@
之前允許 1 到 30 個字符[a-z0-9]+
- 1+ 小寫字母和數字(?:[._-][a-z0-9]+)*
- 0 次或多次出現.
, _
或-
后跟 1+ 小寫字母或數字@
- 一個@
字符(?=.{2,14}\.[az]+$)
- 緊靠右邊,必須有 2 到 14 個字符,然后.
和 1+ 個小寫字母直到字符串結尾[a-z0-9]+(?:-[a-z0-9]+)*
- 1+ 小寫字母和數字,然后出現 0 次或多次連字符,后跟 1+ 小寫字母或數字\.
- 一個點[az]{2,4}
- 兩到四個小寫字母$
- 字符串結束。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.