2013-03-29 26 views
2

以下是否正確?如何使用正則表達式驗證JavaScript中的數字字段?

var z1=^[0-9]*\d$; 
{ 
    if(!z1.test(enrol)) 
    { 
     alert('Please provide a valid Enrollment Number'); 
     return false; 
    } 
} 

它目前沒有在我的系統上工作。

+1

關閉時,RegExp文字以正斜槓括起來:'/^[0-9] * \ d $ /'。你也可以使用'/^\ d + $ /'。請注意,如果測試通過,則表示其全部數字,但不一定是有效的註冊號碼。 – RobG

回答

9

您可以測試它:

/^\d*$/.test(value) 

其中:

  1. /兩端標記的正則表達式的開始和結束在兩端
  2. ^$是檢查完整的字符串比部分匹配
  3. \d*尋找多個職位一些rrences charcters

你並不需要同時檢查\d以及[0-9],因爲他們都做同樣的 - 即匹配數字。

1

嘗試:

var z1 = /^[0-9]*$/; 
if (!z1.test(enrol)) { } 

記住,*是 「0或更多」,因此將允許空值了。如果你想要求一個數字,改變*+這意味着「1個或多個」

3

你這一個,它允許一個點和數量可以有「正面」和「負面」符號

/^[+-]?(?=.)(?:\d+,)*\d*(?:\.\d+)?$/

相關問題