轉載至:https://www.cnblogs.com/overfly/archive/2018/10/08/9753478.html
驗證非0開頭的無限位整數和小數。整數支持無限位,小數點前支持無限位,小數點后最多保留兩位。
js代碼如下:
var reg = /^(([^0][0-9]+|0)\.([0-9]{1,2})$)|^(([^0][0-9]+|0)$)|^(([1-9]+)\.([0-9]{1,2})$)|^(([1-9]+)$)/;
單獨拆分:
1. 整數:/^(([^0][0-9]+|0)$)|^(([1-9]+)$)/
2. 小數:/^((([^0][0-9]+|0)\.([0-9]{1,2}))$)|^(([1-9]+)\.([0-9]{1,2})$)/
根據需求可更改:
1. 若更改小數點前限制位數,則更改 + (例如:小數點前限制4位——([^0][0-9]\d{0,3}|0)——([1-9]]\d{0,3}) ),整數同理。
2. 若更改小數點后限制位數,則更改 {1,2} ( 例如::小數點后最多保留3位——{1, 3};小數點后必須保留3位——{3} )。
第2種方式驗證:
驗證非0開頭的無限位整數和小數。整數15位,小數點前支持15位,小數點后最多保留兩位。
s代碼如下:
var rex = /^(([1-9][0-9]{0,14})|(([0]\.[0-9][1-9]|[0]\.[1-9][0-9]|[0]\.[1-9]|[0]\.[1-9][1-9]|[1-9][0-9]{0,14}\.\d{1,2})))/