簡體   English   中英

美元貨幣格式的正則表達式

[英]Regex for dollar currency format

我需要一個正則表達式來檢查該值是否是有效的美元貨幣

例如 12,123,212.00

  • 它應該按照美元格式 XXX,XXX,XXX 接受“,”
  • 應該只接受一位小數,只接受小數點后兩位
  • 值也可以不帶“,”,例如 12123212.00

你可以試試這個...

 ^\$?((\d{1,3})(?:,[0-9]{3}){0,1}|(\d{1})(?:,[0-9]{3}){0,2}|(\d{1,7}))(\.\d{1,2})?$

如果您真的想使用正則表達式來驗證您的輸入,那么您可以考慮:

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

正則表達式演示

其他答案未達到您的要求Value can also be without "," eg 12123212.00

所以我認為你應該 go 與:

^(\d+|\d{1,3}(,\d{3})+)\.\d{2}$

演示: https://regex101.com/r/FkWLjr/3

如果捕獲組打擾您,請隨意使用非捕獲組重載語法。

如果您想允許沒有小數部分的金額,只需將\.\d{2}$更改為(\.\d{2})?$

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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