我正在尋找貨幣目的的表達式範圍。它需要1-100萬,並允許逗號和句點。我不需要(和。)的最小/最大值(對於正確的格式),但我希望一段時間後的數字是實際分值的最小/最大值2。由於正則表達式數值範圍1 - 1百萬
在範圍: 640或5,000.35或999,000
不在範圍內: 01或1,000,000.01或333,567.678
我正在尋找貨幣目的的表達式範圍。它需要1-100萬,並允許逗號和句點。我不需要(和。)的最小/最大值(對於正確的格式),但我希望一段時間後的數字是實際分值的最小/最大值2。由於正則表達式數值範圍1 - 1百萬
在範圍: 640或5,000.35或999,000
不在範圍內: 01或1,000,000.01或333,567.678
這應做到:
^(1(\.\d{2})?|[1-9]\d{0,2}(,?\d{3})?(\.\d{2})?)|1((,000){0,2}|(000){0,2})(\.00)?$
但它是否可能更容易您首先對該值進行歸一化(例如刪除除數字和.
之外的任何字符),然後對其進行解析。
不,它不... ... http://regexr.com?30l25(我自己也在努力,這似乎是一個痛苦......) – 2012-04-14 12:14:46
我的建議是:
使用類似的東西來驗證輸入具有特定格式:
(這裏有一個演示 - http://regexr.com?30l28)
(1[\.,])?([0-9]{1,3}[\.,])?([0-9]{1,3})([\.,][0-9]{1,2})
然後測試數值範圍:
是value<1.000.000
?
我的正則表達式絕非100%完成,但它確實雖然驗證您的常規數字格式。
這很好。我很感謝你的時間 – Presto44 2012-04-14 12:33:43
+1用於指出顯而易見的情況,並將正則表達式與實際值的檢查相結合 – 2012-04-14 12:57:14
@ Presto44不客氣,我的朋友!如果您發現一個特別有用的答案,建議將其標記爲答案(答案旁邊的勾號),以便社區可以從中受益。 – 2012-04-14 13:56:44
'我希望經過一段時間後的數字是實際分值的最小值/最大值2。「 - 你的意思是'5,000.35'? – 2012-04-14 12:04:34
是的,謝謝 – Presto44 2012-04-14 12:07:40
哪種語言? – user123444555621 2012-04-14 12:23:38