什么是验证字符串的最佳方法和解决方案,该字符串必须用点或逗号表示价格值并且最多有两个小数值?
RegExp,java.text.DecimalFormat还是其他什么东西?
接受这些值:
1
11
1,05
2,5
1.05
2.5
Run Code Online (Sandbox Code Playgroud)
我看到了这些解决方案,但这些并不是我想要的:
我也尝试这个RegExp,/^(\\d+(?:[\\.\\,]\\d{2})?)$/但它不起作用.
Ada*_*zyk 17
使用此正则表达式:
final String regExp = "[0-9]+([,.][0-9]{1,2})?";
Run Code Online (Sandbox Code Playgroud)
它匹配一个或多个数字,后跟可选:逗号或句号,后跟1或2位数.
在Java中,您可以使用:
String.matches(String regex)简单地验证一个String.例如:"1.05".matches(regExp)return true.
Pattern并且Matcher,这将是更快的更经常使用正则表达式.例:
final Pattern pattern = Pattern.compile(regExp);
// This can be repeated in a loop with different inputs:
Matcher matcher = pattern.matcher(input);
matcher.matches();
Run Code Online (Sandbox Code Playgroud)| 归档时间: |
|
| 查看次数: |
27523 次 |
| 最近记录: |