Java10以内整数正则表达式
时间: 2023-06-18 16:03:39 浏览: 98
Java10以内的整数正则表达式可以使用以下模式:
1. 任意整数:`-?\d+` 或 `-?[0-9]+`
2. 正整数:`\d+` 或 `[0-9]+`
3. 负整数:`-\d+` 或 `-[0-9]+`
使用示例:
```java
// 判断是否为整数
String regex = "-?\\d+";
String input = "123";
boolean isInteger = input.matches(regex); // true
// 判断是否为正整数
regex = "\\d+";
input = "123";
boolean isPositiveInteger = input.matches(regex); // true
// 判断是否为负整数
regex = "-\\d+";
input = "-123";
boolean isNegativeInteger = input.matches(regex); // true
```
相关问题
java负整数的正则表达式
### Java 正则表达式匹配负整数
为了创建一个能够识别负整数的正则表达式,在Java中可以定义如下模式:
```java
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class NegativeIntegerRegex {
private static final String NEGATIVE_INTEGER_REGEX = "-\\d+";
public static boolean matchesNegativeInteger(String input) {
Pattern pattern = Pattern.compile(NEGATIVE_INTEGER_REGEX);
Matcher matcher = pattern.matcher(input.trim());
return matcher.matches();
}
public static void main(String[] args) {
String testInputPositive = "123"; // Positive Integer Test Case
String testInputNegative = "-456"; // Negative Integer Test Case
System.out.println(matchesNegativeInteger(testInputPositive)); // Expected output: false
System.out.println(matchesNegativeInteger(testInputNegative)); // Expected output: true
}
}
```
上述代码中的`NEGATIVE_INTEGER_REGEX`变量包含了用于检测字符串是否表示负整数值的正则表达式。此正则表达式的含义是从输入串起始位置开始寻找连字符(即减号),后面跟随至少一位数字[^1]。
对于更复杂的场景,如果希望确保整个字符串仅由单个负整数组成而没有任何额外字符,则可以在正则表达式的两端加上锚点符号`^`和`$`:
```java
private static final String STRICT_NEGATIVE_INTEGER_REGEX = "^-\\d+$";
```
这会强制要求匹配过程发生在目标字符串的开头(`^`)直到结尾(`$`)之间,从而排除任何其他可能存在的字符干扰。
java正整数正则表达式
Java中的正则表达式可以用来匹配正整数,示例如下:
```java
String regex = "^\\d+$";
String input = "12345";
boolean isMatch = Pattern.matches(regex, input);
System.out.println(isMatch); // true
```
解释一下这个正则表达式:
- `^` 表示匹配输入字符串的开始位置
- `\\d` 表示匹配任意数字,相当于 `[0-9]`
- `+` 表示匹配前面的元素一次或多次
- `$` 表示匹配输入字符串的结束位置
因此,`^\\d+$` 表示匹配一个或多个数字组成的字符串,即正整数。
阅读全文