//判断浮点数(double和float)
private boolean isDouble(String str) {
if (null == str || "".equals(str)) {
return false;
}
Pattern pattern = Pattern.compile("^[-\\+]?[.\\d]*$");
return pattern.matcher(str).matches();
}
String aaa="1.9000000000000001";
out.println(aaa+" is double:"+isDouble(aaa));
//检测是否为整数或0。
String regexNumber = "^\\d+$";
String amount="0";
out.println(amount+" is number:"+amount.matches(regexNumber));
//金额验证
// 判断小数点后2位的数字的正则表达式
public static boolean isNumber(String str) {
Pattern pattern = Pattern.compile("^(([1-9]{1}\\d*)|([0]{1}))(\\.(\\d){0,2})?$");
Matcher match = pattern.matcher(str);
if (match.matches() == false) {
return false;
} else {
return true;
}
}String num = "3.a3";
boolean isNum = isNumber(num);
out.println("isNum:" + isNum);