2016-12-13 74 views
0

參照我剛纔的問題currency regex貨幣正則表達式允許以0

我想補充一個情況,我想允許小數,只有當它與0

例如開始

0.25應被允許 1.25不允許

當前正則表達式是如下

/^(?:\d{1,3}(?:,\d{3})+|\d+)(?:\.\d+)?$/ 

其中逗號拖尾等相匹配

+0

[Regex貨幣驗證]的可能重複(http://stackoverflow.com/questions/16242449/regex-currency-validation) –

+0

也許'^(?! 0 * [1-9] [,\ d] * \。\ d)(?:\ d {1,3}(?:,\ d {3})+ | \ d +)(?:\。\ d +)?$'會做。 –

回答

1

這將匹配所有的貨幣與從之前沒有小數或小數的0.X *

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

如果你只是想匹配的0.XX小數的任意數量的使用

/^((?:\d{1,3}(?:,\d{3})+|\d+)|(?:0\.\d{2}))$/ 

這一個改變\d+,一個或多個數字,來\d{2},正好2個位數。

+1

正則表達式對我來說總是很痛苦。你能解釋我預先感謝的第二個正則表達式嗎? –