验证id的java正则表达式
我想要使用java正则表达式验证ID验证id的java正则表达式,java,regex,Java,Regex,我想要使用java正则表达式验证ID 此ID由'-'字符划分为两部分 左半部分有固定的2个大写英文字母 右侧部分有数字,其中数字长度介于2和5之间 以下是我尝试过的代码: boolean x=l.matches("(?i)[A-Z]{2}-\\[2-3]"); 我使用“HT-43”作为输入。我希望得到的答案是“是”,但我得到的答案是“否”。如果您很接近,请尝试以下操作: String num = "HT-43"; boolean x=num.matches("[A-Z]{2}-\\d{2,5
boolean x=l.matches("(?i)[A-Z]{2}-\\[2-3]");
我使用“HT-43”作为输入。我希望得到的答案是“是”,但我得到的答案是“否”。如果您很接近,请尝试以下操作:
String num = "HT-43";
boolean x=num.matches("[A-Z]{2}-\\d{2,5}");
System.out.println(x);
输出:
true
演示:
我不明白为什么,既然你以
[A-Z]{2}
开始你的模式(这是正确且有意义的),你就以\\[2-3]
结束你的模式,这根本没有意义!您在正则表达式教程中遗漏了一些内容,或者问题中遗漏了一些内容。再读一遍,否则你总是会问这种奇怪的问题。