java正则判断为数字,小数,负数,整数都可以
时间: 2023-12-22 12:04:01 浏览: 25
以下是一个判断是否为数字、小数、负数、整数的 Java 正则表达式:
```java
String pattern = "^[-+]?\\d+(\\.\\d+)?$";
```
解释一下这个正则表达式:
- `^` 表示匹配字符串的开头
- `[-+]?` 表示可选的正负号
- `\\d+` 表示匹配一个或多个数字
- `(\\.\\d+)?` 表示小数部分,其中 `\.` 表示匹配小数点,`\\d+` 表示匹配一个或多个数字,`?` 表示小数部分可选
- `$` 表示匹配字符串的结尾
通过使用这个正则表达式,可以判断一个字符串是否为数字、小数、负数或整数:
```java
String str1 = "123"; // 整数
String str2 = "-123"; // 负整数
String str3 = "123.456"; // 小数
String str4 = "-123.456"; // 负小数
String str5 = "abc"; // 非数字字符串
String pattern = "^[-+]?\\d+(\\.\\d+)?$";
System.out.println(str1.matches(pattern)); // true
System.out.println(str2.matches(pattern)); // true
System.out.println(str3.matches(pattern)); // true
System.out.println(str4.matches(pattern)); // true
System.out.println(str5.matches(pattern)); // false
```
如果以上代码输出结果都为 `true`,则说明这个正则表达式可以匹配数字、小数、负数和整数。