2016-08-12 37 views
0

可以在任何你幫我用正則表達式,這將接受這些:JavaScript的正則表達式來接受逗號分隔符(千)和圓點分隔(小數)數

每千逗號將被接受。在數

不得少於4小數點我一直在測試這個模式,但未能在某些情況下:

^\d+(\,\d+{1.3} \.d{1.4})*$ 

有效輸入:

1 
11 
111 
1,111 
1,111,111 
1.1111 
11.1111 
111.1111 
1,111.1111 

無效輸入:

Any letter 
1,1 
1.1 
1.11 
1,11.11 
1,111.1 

主要標準是: (4位小數點a強制性)。 (每千3個數字必須有一個逗號。)

+0

你搜索你問過嗎? - >右邊的相關問題有你應該嘗試的答案。 – epascarello

+0

這個不清楚:'1.1','1.11'和'1,111.1'似乎是有效的。 *數字不超過4個小數點*表示可以有1到4個數字。但是,在底部寫入* 4個小數點是強制性*。如果最後一條語句是正確的,則需要'^(?:\ d {1,3}(?:,\ d {3})* | \ d +)(?:\。\ d {4})?$'或'^ \ d {1,3}(?:,\ d {3})*(?:\。\ d {4})?$'' –

+0

感謝您注意Wiktor,我只編輯了信息,少於4位小數點。 –

回答

1

這是比

/^\d\d?\d?(,\d\d\d)*(\.\d\d\d\d)?$/ 

更復雜或者如果你喜歡

/^\d{1,3}(,\d{3})*(\.\d{4})?$/ 
+0

我其實[建議已經]和OP做了(http://stackoverflow.com/questions/38918783/javascript-regex-to-accept-numbers-with-comma-separator-thousands-and-dot-sepa#comment65194428_38918783)不確認它正在工作。 –

相關問題