我需要用java验证客户输入的输入。即我们应该允许数字七位数,之后如果客户愿意输入数字我们应该添加'。' (点)作为separator.After分隔符后我们应该只允许两个数字,如果输入更多的数字,我们应该抛出一个错误。
Ex:12345 - >有效
谢谢,
答案 0 :(得分:0)
您可以使用正则表达式:
private static final String PATTERN = "\\d{1,7}(\\.\\d{1,2})?";
public static void main(final String[] args) {
final Pattern ptrn = Pattern.compile(PATTERN);
System.out.println(ptrn.matcher("1").matches());
System.out.println(ptrn.matcher("1234567").matches());
System.out.println(ptrn.matcher("12345678").matches());
System.out.println(ptrn.matcher("1234567.").matches());
System.out.println(ptrn.matcher("1234567.1").matches());
System.out.println(ptrn.matcher("1234567.12").matches());
System.out.println(ptrn.matcher("1234567.123").matches());
System.out.println(ptrn.matcher("1.12").matches());
System.out.println(ptrn.matcher(".12").matches());
}