需要的正則表達式,其具有:(。)小數點前普通價格驗證表達式
- 最大8位小數點後指向
- 最大4位數字
- 小數點是可選
最大有效小數位數是小數點後8位數和小數點後4位數 所以99999999.9999
我試過的正規rexpression ^\ d {0,8} [。]?\ d {1,4} $對於123456789 而言是失敗的,並且不止於此。意味着如果小數點不可用,它會佔用8位以上的數字。
這裏測試:http://regexpal.com/
許多許多在此先感謝!
需要的正則表達式,其具有:(。)小數點前普通價格驗證表達式
最大有效小數位數是小數點後8位數和小數點後4位數 所以99999999.9999
我試過的正規rexpression ^\ d {0,8} [。]?\ d {1,4} $對於123456789 而言是失敗的,並且不止於此。意味着如果小數點不可用,它會佔用8位以上的數字。
這裏測試:http://regexpal.com/
許多許多在此先感謝!
^\d{0,8}(\.\d{1,4})?$
可以使整個小數可選
您需要在句點(點)前放置反斜槓:ie((\。\ d {1,4})) ?'否則你接受包括另一個數字的任何字符。 –
你可以試試這個:
^\d{1,8}(?:\.\d{1,4})?$
或
^[1-9]\d{0,7}(?:\.\d{1,4})?$
如果你不希望有一個零作爲第一個數字。
,如果你想,你可以允許這樣的:(0.1234)
^[1-9]\d{0,7}(?:\.\d{1,4})?|\.\d{1,4}$
感謝您的超快反應!我發現它是.12345678失敗它應該只需要.1234。 – user2338652
@ user2338652如果您希望值爲小數點後的最大4位數。如果大於4,則不應接受輸入。這可能會導致**舍入**錯誤。只是**不會* *接受輸入,如果它不符合你的標準..和** valiadation!=匹配** – Anirudha
@ user2338652僅供參考,你接受的答案也在「.123456789」上「失敗」。 –
上述任何對我沒有工作。 僅限於此作品
^([0-9]{0,2}((.)[0-9]{0,2}))$
價格不能爲負值嗎? –
不,不適合我的情況! – user2338652