java 数字匹配_java正则表达式匹配数字怎么实现?
时间: 2024-03-05 21:48:09 浏览: 58
可以使用Java中的正则表达式来匹配数字。以下是一个示例代码,可以匹配包括整数、小数、正数和负数在内的所有数字:
```
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class NumberMatcher {
public static void main(String[] args) {
String input = "This is a string with 123 and 4.56 and -78.90 numbers";
String regex = "-?\\d+(\\.\\d+)?"; // 匹配数字的正则表达式
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(input);
while (matcher.find()) {
System.out.println(matcher.group());
}
}
}
```
输出结果为:
```
123
4.56
-78.90
```
在上述代码中,首先定义了一个包含数字的字符串 `input`,然后定义了一个匹配数字的正则表达式 `regex`,该正则表达式包括以下几个部分:
- `-?`:表示可选的负号。
- `\d+`:表示至少一个数字。
- `(\.\d+)?`:表示可选的小数部分,其中 `\.` 表示匹配小数点,`\d+` 表示至少一个数字。
然后使用 `Pattern` 类将正则表达式编译成模式,再使用 `Matcher` 类对输入字符串进行匹配,通过 `find()` 方法查找所有匹配的数字,并使用 `group()` 方法获取匹配的数字。
阅读全文