代码(从此stackoverflow中获取):
String reg = "^['$']([0-9]{1,3})(?:,?[0-9]{3})*\\.[0-9]{2}$";
String input = "$123,213,123.00"; //Valid input
Pattern pattern = Pattern.compile(reg);
Matcher matcher = pattern.matcher(input);
if (matcher.find()) {
System.out.println(matcher.group(0)); //prints /{item}/
} else {
System.out.println("Match not found");
}
问题:即使我将输入保持为$1234,213,123.00
(开头为4位),代码也将其作为有效值。但是在这种情况下,我希望代码说“找不到匹配项”。请检查正则表达式。