java正则 匹配负数金额
时间: 2023-12-08 10:38:39 浏览: 132
以下是Java正则匹配负数金额的示例代码:
```java
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main {
public static void main(String[] args) {
String input = "-$100.00";
String regex = "^-\\$\\d+(\\.\\d{2})?$";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(input);
if (matcher.matches()) {
System.out.println("匹配成功");
} else {
System.out.println("匹配失败");
}
}
}
```
解释:
- `^` 匹配字符串的开始位置。
- `-` 匹配负号。
- `\\$` 匹配美元符号,需要使用转义字符。
- `\d+` 匹配一个或多个数字。
- `(\\.\\d{2})?` 匹配小数点后两位,使用问号表示可选。
- `$` 匹配字符串的结束位置。
相关问题
java正则只匹配负数
Java正则表达式可以用来匹配不同类型的数据,包括负数。
要实现只匹配负数的正则表达式,可以使用如下的模式:-\\d+。
这个正则表达式可以用来匹配任何以负号开头,并且后面跟着一个或多个数字的字符串。
下面是一个简单的示例:
```java
import java.util.regex.*;
public class NegativeNumberRegex {
public static void main(String[] args) {
String input = "-123"; // 负数的字符串
String pattern = "-\\d+"; // 匹配负数的正则表达式
Pattern p = Pattern.compile(pattern);
Matcher m = p.matcher(input);
if (m.matches()) {
System.out.println("输入字符串是负数");
} else {
System.out.println("输入字符串不是负数");
}
}
}
```
在上述示例中,我们使用Pattern和Matcher类来进行正则匹配。首先,创建一个Pattern对象,然后使用该对象的matcher()方法创建一个Matcher对象。
接下来,我们使用Matcher对象的matches()方法来检查输入字符串是否与给定的正则表达式匹配。如果匹配成功,则输出"输入字符串是负数",否则输出"输入字符串不是负数"。
对于输入字符串"-123",由于匹配了负数的正则表达式,所以输出结果为"输入字符串是负数"。
这就是使用Java正则表达式来匹配负数的一个简单示例。
java 数字匹配_java正则表达式匹配数字怎么实现?
要使用Java正则表达式匹配数字,可以使用以下代码:
```java
String str = "12345";
if(str.matches("\\d+")) {
System.out.println("是数字");
} else {
System.out.println("不是数字");
}
```
其中,`\\d` 表示数字,`+` 表示匹配一个或多个数字。
如果要匹配包括小数的数字,可以使用以下代码:
```java
String str = "123.45";
if(str.matches("\\d+(\\.\\d+)?")) {
System.out.println("是数字");
} else {
System.out.println("不是数字");
}
```
其中,`\\.` 表示小数点,`?` 表示前面的部分是可选的,即小数部分可以没有。
如果要匹配负数,可以使用以下代码:
```java
String str = "-123.45";
if(str.matches("-?\\d+(\\.\\d+)?")) {
System.out.println("是数字");
} else {
System.out.println("不是数字");
}
```
其中,`-?` 表示负号是可选的。
阅读全文