[英]Regex to allow only particular numbers
我有一個字段,該字段只能取整為12的值,例如12,24,36,48,60,72,84,96,108,120.
我在正則表達式下面使用了:
12|24|36|48|60|72|84|96|108|120
但這還允許使用諸如12abc, 12-!&
。 它允許帶有數字的字母或特殊字符。 是否有任何正則表達式只允許輸入12,24,36,48,60,72,84,96,108,120
作為輸入。
我同意Pointy的觀點,這聽起來並不是正則表達式的工作。 如果您使用的是HTML5輸入驗證,則一定要使用Sean T展示的方法 。
但是從您所說的是匹配的角度來看,只是您沒有輸入開始錨( ^
)和輸入結束錨( $
):
^(?:12|24|36|48|60|72|84|96|108|120)$
(您需要非捕獲組,否則錨點將成為其旁邊替代項的一部分。)
如果要允許無害空間:
^\s*(?:12|24|36|48|60|72|84|96|108|120)\s*$
顯然,無論哪種情況(執行類似操作或使用Sean的HTML5方法),如果將其發送到服務器,則也需要在服務器上對其進行驗證。
如果您使用的是html5控件,請使用step
, min
和max
。
<input type="number" step="12" min="0" max="120" name="multiplesOfTwelve"/>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.