我的電子郵件驗證器需要一個正則運算式。我不想讓用戶輸入完整的電話號碼作為email用戶名。如果用戶輸入所有數字:
123456789@test.com // allowed (9 digits or less)
01234567890@test.com // allowed (11 digits but not starting with 1)
123456789012@test.com // allowed (12 digits or more)
0123456789@test.com // NOT allowed (10 digits)
11234567890@test.com // NOT allowed (11 digits and starting with 1)
這里有一個很好的答案,我試過了
<input
type="email"
pattern="(?:^|(?<=\s))(?!\d{10}|1\d{10})(\w[\w\.]*@\w \.[\w\.] )\b"
/>
但是排除部分(?!\d{10}|1\d{10})對我不起作用。我想允許 12 位或更多位。
謝謝
uj5u.com熱心網友回復:
您可以嘗試向您的正則運算式添加一個負前瞻,如下所示:
(?:^|(?<=\s))(?!1?\d{10}@)(\w[\w\.]*@\w \.[\w\.] )\b
-------------
點擊演示
我剛剛將子模式添加(?!1?\d{10}@)到您的正則運算式中,它不允許當前位置后跟(可選數字1后跟 10 個以上數字后跟 @)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/411336.html
標籤:
上一篇:如何使用正則運算式僅獲取數字值
