簡體   English   中英

RegExp在小數點后三位放置零(0)

[英]RegExp Place zero(0) after three decimals

Hi all i need all these possible cases to be valid

0.001
0.320
0.009
0.0
0.3
0.9

讓reqDecimal = / ^(0(。\\ d +)?| 1(.0 +)?)$ /; 我嘗試上面的代碼需要期望不超過3個十進制值。

只需將您的兩個加號替換為{1,3)

/^(0(.\d{1,3})?|1(.0{1,3})?)$/

這樣可以確保每個小數之間的數字介於1到3之間:

 const regex = /^(0(.\\d{1,3})?|1(.0{1,3})?)$/; const amounts = [ "0.001", "0.320", "0.009", "0.0", "0.3", "0.9", "0.", "0.0000", "1.", "1.000", "1.0000" ] amounts.forEach(function(amount) { console.log(amount, "=", regex.test(amount)); }); 

這也可以在這里在Regex101上看到

您可能會使用:

^(?:1|0)\.\d{1,3}$

如果您想保持在1.000

^0\.\d{1,3}\b|1\.0{1,3}\b$

例子

https://regex101.com/r/wKZseY/1
https://regex101.com/r/wKZseY/2

暫無
暫無

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

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