正则判断是否是整数或者是小数

        正则表达式在java代码和js代码中使用得都比较频繁。作用一个java开发人员,写正则是必须要会的。
前几天在代码里碰到一个要校验金额的问题,金额可能是整数,也可能是小数。因此写了个正则,在此记录下来,方便后续查阅。

一、代码

(1)java代码
    /**
	 * 判断是否是整数或者是小数 
	 * @param str
	 * @return true:是,false不是
	 */
	private boolean validateNumber(String str) {
		if(StringUtils.isBlank(str)) {
			return false;
		}
        // 说明一下的是该正则只能识别4位小数;如果不限制小数位数的话,写成[+-]?[0-9]+(\\.[0-9]+)?就可以了
		return str.matches("[+-]?[0-9]+(\\.[0-9]{1,4})?");    
	}

(2)js代码
var reg = /^[+-]?[0-9]+(\.[0-9]{1,4})?$/ ;
alert(reg.test("0.5"));

二、一些说明

        java的正则和js的正则是有不同的,最明显的就是用 “ \ ”转义的时候。
        更多java和js正则的比较可参考:http://blog.csdn.net/qq_36026721/article/details/53648418
                                                             http://blog.csdn.net/sqk1988/article/details/7548771


posted @ 2017-08-19 19:09  zeng1994  阅读(6219)  评论(0编辑  收藏  举报