public class RegexDemo { public static void main(String[] args) { String qq="123456789"; System.out.println(checkQQ(qq)); } public static boolean checkQQ(String qq){ //规则:6位到20位之内,0不能在开头,必须全部是数字 //核心思想: //先把异常数据过滤 //下面的就是满足要求的数据了 int len=qq.length(); if(len<6 || len>20){ return false; } //0不能在开头 if( qq.startsWith("0")){ return false; } //必须全部都是数字 for (int i = 0; i <qq.length() ; i++) { int c= qq.charAt(i); if(c<'0' || c>'9'){ return false; } } return true; } }
假设我们利用了正则表达式呢?
public class RegexDemo { public static void main(String[] args) { String qq = "123456789"; //利用正则表达式 System.out.println(qq.matches("[1-9]\\d{5,19}")); } }
如果用了正则表达式,那么短短几行代码就可以了