![](/img/trans.png)
[英]Regular expression to restrict 'n' digits before and after decimal point
[英]Regular expression to enforce 2 digits after decimal point
我需要使用 JavaScript 驗證數字字符串,以確保該數字恰好有兩位小數。
只有在以下情況下,驗證才會通過
有效號碼:
0.01
0.12
111.23
1234.56
012345.67
123.00
0.00
無效數字:
.12
1.1
0.0
00.00
1234.
1234.567
1234
00123.45
abcd.12
12a4.56
1234.5A
我試過正則表達式[0-9][\\.][0-9][0-9]$
,但它允許小數點前的字母,如12a4.56
。
.
匹配任何字符,它不會做你認為它做的事情。 你必須逃避它。 此外,您還有兩個錯誤; 嘗試
^[0-9]+\.[0-9][0-9]$
相反,甚至更好,使用\\d
表示十進制數字:
^\d+\.\d\d$
^(0|0?[1-9]\d*)\.\d\d$
\\.\\d\\d$
另外兩個條件可以重新表述如下:
這包括在這兩種情況下:
0
0?[1-9]\\d*
var values='0.12';
document.write(values.match(/\d+[.]+\d+\d/));
根據需要更改值並檢查它
我用過這個
^[1-9][1-9]*[.]?[1-9]{0,2}$
0 不接受
123.12 接受但 123.123 不接受
1 接受
12213123 接受
sdfsf 不接受
15.12 接受
15@12 不接受
15&12不接受
這里是:
^(0[.]+\d{2})|^[1-9]\d+[.]+\d{2}$
試試這個代碼
pattern="[0-9]*(\.?[0-9]{1,2}$)?"
1 有效
1.1 有效
1.12 有效
1.123 無效
只有數字有效
模式="[0-9]*(.?[0-9]{2}$)?"
1 有效
1.1 無效
1.12 有效
1.123 無效
只有數字有效
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.