/^(([1-9]\d*)|([0][.]{1}[0-9]{0,2}[1-9]+)|([1-9]\d*[.]{1}[0-9]+))$/g
([1-9]\d*) 表示整数, 不以0开头,要大于0;
([0][.]{1}[0-9]{0,2}[1-9]+) 表示小于1的小数,不能全是0,要大于0,这里业务规定小数部分前三位一定要有一个非0,“{0,2}” 其它业务可以改这里;
([1-9]\d*[.]{1}[0-9]+) 表示大于等于1的其它小数。
注意:这里所有的正则最后都要放到最外层的小括号中, /^(......)$/ ,不然会匹配成部分true,如:2.22jjaa$$、1.1.1.1也会是true。
最后,一定要多测一下。