java之校验QQ号是否正确以及如何用正则表达式进行优化

复制代码
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}"));
    }
}

如果用了正则表达式,那么短短几行代码就可以了

相关推荐
跟着珅聪学java1 小时前
spring boot +Elment UI 上传文件教程
java·spring boot·后端·ui·elementui·vue
我命由我123452 小时前
Spring Boot 自定义日志打印(日志级别、logback-spring.xml 文件、自定义日志打印解读)
java·开发语言·jvm·spring boot·spring·java-ee·logback
lilye662 小时前
程序化广告行业(55/89):DMP与DSP对接及数据统计原理剖析
java·服务器·前端
徐小黑ACG2 小时前
GO语言 使用protobuf
开发语言·后端·golang·protobuf
0白露4 小时前
Apifox Helper 与 Swagger3 区别
开发语言
Tanecious.4 小时前
机器视觉--python基础语法
开发语言·python
叠叠乐5 小时前
rust Send Sync 以及对象安全和对象不安全
开发语言·安全·rust
想跑步的小弱鸡5 小时前
Leetcode hot 100(day 3)
算法·leetcode·职场和发展
战族狼魂5 小时前
CSGO 皮肤交易平台后端 (Spring Boot) 代码结构与示例
java·spring boot·后端
Tttian6226 小时前
Python办公自动化(3)对Excel的操作
开发语言·python·excel