Java 用于验证整数的正则表达式

Java 用于验证整数的正则表达式,java,Java,格式需要正则表达式,其中最多允许7位数字,每三位数字后加逗号 有效值为: 7 77 555 1,234 12,345 444,888 4,669,988 目前我使用的([0-9]{1}(,?[0-9]{3}){1,2}在前三种情况下都会失败。使用这个: [0-9]{1,3}(,[0-9]{3}){0,2} 要验证字符串中的整数(必须删除,): 使用这个: [0-9]{1,3}(,[0-9]{3}){0,2} 要验证字符串中的整数(必须删除,): 尝试使用此正则表达式和数字验证进行长度

格式需要正则表达式,其中最多允许7位数字,每三位数字后加逗号

有效值为:

7
 77
 555
 1,234
12,345
444,888
4,669,988
目前我使用的
([0-9]{1}(,?[0-9]{3}){1,2}
在前三种情况下都会失败。

使用这个:

[0-9]{1,3}(,[0-9]{3}){0,2}
要验证字符串中的整数(必须删除,):

使用这个:

[0-9]{1,3}(,[0-9]{3}){0,2}
要验证字符串中的整数(必须删除,):

尝试使用此正则表达式和数字验证进行长度检查

public boolean isNumValid(String num) throws ParseException {
    if (!(NumberFormat.getInstance().parse(num).intValue() > 9999999)) {
        if (num.matches("\\d{1,3}(,\\d{3}){0,2}")) {
            return true;
        }
    }
    return false;
}
尝试使用此正则表达式和数字验证进行长度检查

public boolean isNumValid(String num) throws ParseException {
    if (!(NumberFormat.getInstance().parse(num).intValue() > 9999999)) {
        if (num.matches("\\d{1,3}(,\\d{3}){0,2}")) {
            return true;
        }
    }
    return false;
}
试试这个正则表达式

"\\d{1,3}|\\d{1,3},\\d{3}|\\d{1,2},\\d{3},\\d{3}"
试试这个正则表达式

"\\d{1,3}|\\d{1,3},\\d{3}|\\d{1,2},\\d{3},\\d{3}"

您必须使用正则表达式吗?DecimalFormat将是一个更直接的选择。解析数字并确保它小于10^8。您必须使用正则表达式吗?DecimalFormat将是一个更直接的选择。解析数字并确保它小于10^8。它还接受“111123446”和“11123446”。但限制为7。我需要用逗号验证以检查正确的逗号位置,并将字符最大长度限制为7。它还接受“111123446”和“11123446”。但限制为7。我需要用逗号验证以检查正确的逗号位置,并将字符最大长度限制为7。