1 java
String num = "1.23";
Pattern pattern = Pattern.compile("-?[0-9]+.?[0-9]*");
Matcher mat = pattern.matcher(num);
if(mat.matches()){
System.out.println("是数字");
} else {
System.out.println("不是数字");
}
2 正则表达式
-?[0-9]+.?[0-9]* : 所有的数字 包括“23.” ,“1.5”, 返回true;
-?[0-9]+.?[0-9]+ : 所有的数字 但不包括“23.” 返回false;
-1.2 true; 1.1.3 false; 1..3 false;0.7 true; 23424.56 true
3 基础知识
?: 0个或1个;
+ : 1个或多个;
* : 0个或1个或多个;
例子 :-?[0-9]+.?[0-9]* 解释 : 一个或0个“-”负号 + 一个或者多个0~9的数字 + 一个或0个“.”小数点 + 0个或者一个或者多个0~9的数字