2015-12-24 40 views
1
^[a-zA-Z0-9]$ 

我檢查輸入以匹配數字和字母,但是,我該如何檢查輸入是否只包含零?Javascript正則表達式檢查輸入只包含零

例如:

'01weye0y4' = true; 
'00' = false; 
+0

如果用戶只輸入「11111」或「22222」等,該怎麼辦?有效嗎? –

+2

所以只需要使用數字'Number(str)=== 0' – epascarello

+0

'/^0 + $ /'有什麼問題? – Barmar

回答

1

它更容易,因爲@epascarello說,只是爲了檢查是否輸入值的數FORM等於0(與+val === 0或類似的東西)。但是,如果你需要使用的模式,這裏有一個可能的方法:

var p = /^(?!0+$)[a-zA-Z0-9]+$/; 
p.test('00'); // false 
p.test('001001weye0y4'); // true 

的關鍵是使用負先行檢查串是否只包含零。


這可以很容易地擴展,以檢查任何位:

var p = /^(?!([0-9])\1*$)[a-zA-Z0-9]+$/; 

如果該值僅使用單個數字(因此兩者「0」,「00」,「1」這一模式失敗,'11'不通過支票)。

+0

謝謝!像魅力一樣工作。 –

相關問題