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

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

相关推荐
Larry_Yanan15 分钟前
QML学习笔记(五十)QML与C++交互:QML中单例C++对象
开发语言·c++·笔记·qt·学习·ui·交互
im_AMBER15 分钟前
算法笔记 09
c语言·数据结构·c++·笔记·学习·算法·排序算法
凯芸呢17 分钟前
Java中的数组(续)
java·开发语言·数据结构·算法·青少年编程·排序算法·idea
竹竹零24 分钟前
JacksonUtil--序列化与反序列化
java·开发语言·windows
钱多多_qdd35 分钟前
基础篇:IoC(三):Bean实例化策略InstantiationStrategy
java·spring
寂静山林37 分钟前
UVa 1030 Image Is Everything
算法
float_com38 分钟前
【java基础语法】---- 综合训练
java
Dyan_csdn43 分钟前
springboot系统设计选题3
java·spring boot·后端
AI柠檬43 分钟前
几种排序算法的实现和性能比较
数据结构·算法·c#·排序算法
sheji34161 小时前
【开题答辩全过程】以 基于Java的旅游网站的设计与开发为例,包含答辩的问题和答案
java·开发语言·旅游