![](/img/trans.png)
[英]Regex decimal greater than 0 less than 1 with at most 3 decimal places
[英]Regex to allow decimal numbers greater than 0 and less than 100
我試圖輸入大於0
且小於100
,我正在使用以下正則表達式:
/^(0+)?(99(\.99?)?|(\.99?)?|\.[0-9]+|0?[0-9](\.[0-9]{0,2})?|(0+)?[0-9][0-9](\.[0-9][0-9]?)?)$/
這個正則表達式不會抱怨零,但0.01是一個有效值。
基本上,我試圖獲得00.00
格式的值,並且也可以使用0.01, 00.01, ... 99.99
類的值0.01, 00.01, ... 99.99
但僅限數字和點。
我正在使用javascript和html
那么為什么你必須用復雜的正則表達式來打敗自己。 為什么不進行數字比較?
function validNum (num) {
num = parserFloat(num);
return num > 0 && num < 100;
}
只想要兩位小數?
function validNum (num) {
num = parseFloat((num + "").replace(/^(.*\.\d\d)\d*$/, '$1'));
return num > 0 && num < 100;
}
.5: true
..5 : false
.005 : false
0.05 : true
99.99 : true
00.01 : true
00.00 : false
0.00 : false
00.0 : false
100.00 : false
我想你不想允許0.00
或00.00
^(?!00?\.00$)\d{1,2}(?:\.\d{2})?$
要么
^(?!00?\.00$)\d{1,2}(?:\.\d{1,2})?$
開頭的負向前瞻(?!00?\\.00$)
斷言要匹配的數字不是00.00
或0.00
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.