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的數字