簡體   English   中英

正則表達式貨幣格式 - javascript

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM