我的號碼格式如下圖:
1. 775645645(9位)
2. 0775645645(10位)
3. 94775645645
數字可以以 7 或 0 或 94 開頭。
所以我在 HTML 文本輸入中使用正則運算式模式進行了嘗試,如下所示:
<input type="text" name="mobile" class="form-control" pattern ="(?:7|0|(?:\ 94))[0-9]{9,10}$" required />
但是這種模式對我不起作用。感謝你的幫助。
更新:
這里我使用 jQuery validate 來驗證前端表單。
uj5u.com熱心網友回復:
您可以使用
pattern="(?:7|0\d|\ 94\d)\d{8}"
請參閱正則運算式演示。它將被編譯成類似的模式^(?:(?:7|0\d|\ 94\d)\d{8})$并匹配
^(?:- 字串開始和非捕獲組開始(?:7|0\d|\ 94\d)-7, or0and a digit or94and a digit\d{8}- 八位數)$- 組的結尾,字串的結尾。
請看下面的演示:
input:valid {
color: navy
}
input:invalid {
color: red;
}
<form>
<input type="text" name="mobile" class="form-control" pattern="(?:7|0\d|\ 94\d)\d{8}" required />
<input type="Submit"/>
</form>
uj5u.com熱心網友回復:
可以試試這個希望有幫助
- 如果以 7 開頭,則長度必須為 9 位
- 如果以 0 開頭,則長度必須為 10 位
- 如果以 94 開頭,則長度必須為 12 位
input:not(:placeholder-shown):invalid{
background-color:pink;
box-shadow:0 0 0 2px red;
}
<input type="text" name="mobile" class="form-control" placeholder="Phone number" pattern ="(7[0-9]{8}|0[0-9]{9}|\ 94[0-9]{9})$" required />
uj5u.com熱心網友回復:
如果您正在尋找僅適用于您的示例的正則運算式模式,請嘗試以下操作:
(?:(?:7|0[1-9]{1})|(?:\ 94))[0-9]{8}
7|0[1-9]{1}接受 7 或 0 以及 1-9 之間的另一個數字- 用于
|表示“或”條件 \ 94接受 94 作為 3 個開始數字[0-9]{8}表示 0 到 9 之間的 8 個其他數字
如果您正在尋找一種適用于各種電話號碼模式的模式,您可以試試這個:
^[ ]?[(]{0,1}[0-9]{1,4}[)]{0,1}[-\s\./0-9]*$
這是如何作業的:
^表示字串的開頭[ ]?對于開頭包含“ ”的電話號碼[(]{0,1}表示開頭“ ( ”。對于包含 (###) 的電話號碼。示例:(222)333-333[0-9]{1,4}表示“(###)”之間的數字[)]{0,1}代表結束“)”[-\s\./0-9]*這將允許電話號碼被接受,即使電話號碼使用“-”或“”或“”分開。$表示字串的結尾
檢查這個網站:https ://regexr.com/
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/460600.html
上一篇:如何在記事本 中使用正則運算式搜索和替換雙引號之間的逗號
下一篇:EDI檔案上的正則運算式
