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}"));
    }
}

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

相关推荐
wuqingshun3141595 小时前
MySQL 如何解决深度分页问题?
java·mysql·面试
buhuizhiyuci5 小时前
【算法篇】位运算 —— 基础篇
java·数据库·算法
laboratory agent开发5 小时前
企业AI Agent落地前,先回答四个工程问题
java·前端·人工智能
Black蜡笔小新5 小时前
算法训练完了怎么上线?DLTM→AIS→EasyGBS三步交付流水线
人工智能·算法
微三云 - 廖会灵 (私域系统开发)5 小时前
电商系统国际化架构设计:多语言、多币种、多时区、多税制的全链路实现
java·前端·数据库
XS0301065 小时前
Spring AI 第二课-流式输出 & 运行时动态参数配置
java·人工智能·spring
孬甭_5 小时前
C++ string类
开发语言·c++
额恩665 小时前
阶段五:HttpOnly Cookie 登录持久化
java·spring
Python图像识别-16 小时前
基于yolov8的钢铁缺陷检测系统-2027毕业版(UI界面+Python项目源码+模型+标注好的数据集)
开发语言·python·yolo
sycmancia6 小时前
Qt——多线程与界面组件的通信
开发语言·qt·算法