2014-10-18 83 views
0

好吧,所以我目前正在嘗試使用正則表達式來驗證我的字符串有16個數字。也是MM/YYYY格式。他們不工作。16位數和正斜槓的正則表達式?

var cc = ccnum.value; 
cc = cc.replace(/\s/g, ''); 
cc = cc.replace(/-/g, ''); 
//Validate the credit card number: 
if (/^\d{16}$/.test(cc.value)) { 
    removeErrorMessage('ccnum'); 
} else { 
    addErrorMessage('ccnum', 'Please enter a valid credit card number.'); 
    error = true; 
} 

if (/^\d{2}?\d{4}$/.test(exp.value) && (expDate[0] >= month) && (expDate[1] >= year)) { 
+0

「16號」 _and_「MM/YYYY格式「?共24個字符,或15個數字,包括一個'/',總共16個字符?謝謝 – guest271314 2014-10-18 05:22:07

回答

3

正則表達式來驗證其正好包含16位數字或不是字符串。

^\d{16}$ 

正則表達式來驗證這個MM/YYYY格式

^\d{2}\/\d{4}$ 

實施例:

> /^\d{16}$/.test('1234567890987654') 
true 
> /^\d{16}$/.test('12345678909876545') 
false 
> /^\d{16}$/.test('712345678909876545') 
false 
> /^\d{16}$/.test('123456789098765') 
false 
+0

好吧mm/yyyy格式的工作,但16位數沒有。我也是從這個代碼開始的。我確保我的輸入也是16位數字。 – EsotericRider 2014-10-18 05:07:41

+0

它適用於我..我認爲你的代碼可能有一些問題.. – 2014-10-18 05:12:54

+1

它會驗證錯誤的月份。 – 2014-10-18 05:22:54

0

正則表達式來驗證這個MM/YYYY格式

^0[1-9]|1[0-2]\/\d{4}$