在学习编程的路上,我们常常会碰到各种大大小小的项目,有可能是一个增删改查系统,也有可能是一个正经的app,那么我们常常会用到登陆与注册,申请个人的帐号,这个时候就需要考虑到帐号是否符合规范。
现在大多数帐号是用手机号或者纯数字的帐号,那么我们就需要在注册的时候就需要检查帐号的规范性,毕竟用户是容易出错的,这是我们必须要设计的一步。
现在的主流都是用手机号或者关联QQ等登陆方式,那么就以手机号为例来说明。
那么何为规范?很容易想到,首先,帐号不能有字母,要是纯数字:其次,要是11位的数字:最后,就是要符合各大运营商的号码:
现有手机号段:
移动:139 138 137 136 135 134 147 150 151 152 157 158 159 178 182 183 184 187 188
联通:130 131 132 155 156 185 186 145 176
电信:133 153 177 173 180 181 189
虚拟运营商:170 171
因为手机号码格式难统计,这里先说方法,具体开发要依照当时的情况开更改;
我们暂且先验证手机号码为11位,和开头的前两位。这里就不验证符合的手机号码了,以免对人造成困恼。
在来看一个例子:
String regex = "([A-Z]|[a-z]|[0-9]|[-,_,.]){0,}";
验证一个字符串的组成 ,这里要注意,在正则表达式中,“.”表示的是任意字符, 如果用 |.来判断 ,则会达不到我们所要的效果,在split()方法中也是,以“.”分割字符要用split(“\\.”) ;
技术有限,有不正确之处求大佬们指教!