[英]Regex Currency format - javascript
我目前正在使用以下正則表達式在我的html輸入表單字段中驗證貨幣:
/[1-9]\d*(?:\.\d{0,2})?/
但是,它允許通過以下值:13000.234.12
這不是有效值。 以下是我想要允許的有效值:
有效
125
1.25
1000.15
700.1
80.45
0.25
無效
130.1.4
21.......14
感覺就像那里應該有一個標准的正則表達式模式,想法?
旁注 :我通過事件鍵監聽器阻止了字母數字字符和美元符號,因此它們已經無法輸入,這應該會使這個問題變得容易一些。
這樣的事情應該有效:
^(\d*\.\d{1,2}|\d+)$
它匹配:
1.00
1
0.23
0.2
.2
它不匹配:
.
1.1.
/^(\d*?)(\.\d{1,2})?$/
所以它是(開始)(任何數量的數字 ,甚至是零),(。然后只有數字 ,一兩個,但不一定要在那里)結束
我用逗號作為小數分隔符。 我的朋友們:
^([0]?(,\d{1,2})?|([1-9]{1,3})?((\.\d{3})*|([1-9])*)?(,\d{1,2})?)?$
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.