【关于正则表达式】求大神解决
目的是 页面传过来一个参数 验证下。
首位必须是2最少10位数字。
传过来也是数字类型。代码如下
String param1=request.getParameter("param1");
System.out.println(param1);
String s="/^[2][0-9]{9}$/";
if(param1.matches(s)){
System.out.print("格式正确");
}else{
System.out.print("错误");
}
一直为假,不知为何。。
没报错。。
------解决方案--------------------
你写正则的方式用了JS的语法,这是不对的。修改为:
String s="^[2][0-9]{9}$";
另外,因为你用的是matches(),所以其实开始和结束标志符可以去掉,简化为:
String s="2[0-9]{9}";