Java:正则表达式 matches

文章目录

  • 正则表达式
    • 作用
    • 基本用法
    • 小结
    • 代码
  • 案例:校验用户输入的电话,邮箱,是否合法
    • \\.是什么意思

黑马学习笔记

正则表达式

由一些特定的字符组成,代表的是一个规则

作用

  • 用来校验数据格式是否合法
  • 在一段文本中查找满足要求的内容

基本用法

进API查,或者使用的时候直接搜
在这里插入图片描述

小结

在这里插入图片描述

代码

/**
 * @Author: ggdpzhk
 * @CreateTime: 2024-09-02
 * 校验QQ号码是否正确,要求全部是数字,长度是(6-20)之间,不能以0开头
 */
public class regex {
    public static void main(String[] args) {
        String qq = "12366589";
        String qq1 = "q1256d3";
        String qq2 = "03336";
        System.out.println(cheakQQ(qq));
        System.out.println(cheakQQ(qq1));
        System.out.println(cheakQQ(qq2));

        System.out.println(cheakQQ2(qq));
        System.out.println(cheakQQ2(qq1));
        System.out.println(cheakQQ2(qq2));


    }



    //使用正则表达式
    public static boolean cheakQQ2(String qq) {
        return qq != null && qq.matches("[1-9]\\d{5,19}");//第一个数字是1-9,后面是0-9的数字,长度是6-20,
        //  \\d{a,b}表示后边数字的位数,如:\d{3}表示3位数字,\d{1,3}表示1-3位数字
        // \\d 是转义字符
    }

    public static boolean cheakQQ(String qq) {
        //1. 判断号码是否为null
        if (qq == null || qq.startsWith("0") || qq.length() < 6 || qq.length() > 20) {
            return false;
        }
        //2. 判断qq号码是否为纯数字
        for (int i = 0; i < qq.length(); i++) {
            if (qq.charAt(i) < '0' || qq.charAt(i) > '9') {
                return false;
            }
        }
        return true;
    }
}

在这里插入图片描述

案例:校验用户输入的电话,邮箱,是否合法

package regex;

import java.util.Scanner;

/**
 * @Author: ggdpzhk
 * @CreateTime: 2024-09-02
 *
 * 校验用户输入的电话,邮箱,是否合法
 */
public class Test2 {
    public static void main(String[] args) {

        Scanner sc =  new Scanner(System.in);
        while (true) {
            System.out.println("请输入您的电话号码:");
            String phone = sc.next();

            if(cheakPhone(phone)){
                System.out.println("电话号码合法");
                break;//注意!!!!
            }else{
                System.out.println("电话号码不合法");
            }
        }

        while (true) {
            System.out.println("请输入您的qq邮箱:");
            String email = sc.next();
            if(cheakEmail(email)){
                System.out.println("邮箱合法");
                break;
            }else{
                System.out.println("邮箱不合法");
            }
        }

        while (true) {
            System.out.println("请输入您的密码:(6-10位,包含数字和大小写字母)");
            String password = sc.next();
            if(cheakPassword(password)){
                System.out.println("密码合法");
                break;
            }else{
                System.out.println("密码不合法");
            }
        }
    }

    private static boolean cheakPassword(String password) {
        return password.matches("^[a-zA-Z0-9]{6,10}$");
    }


    //检查输入邮箱是否满足格式
    /*
    @qq.com  前面的位数在5 - 10 之间,第一位不能是0
    * */
    private static boolean cheakEmail(String email) {
        return email.matches("^[^0][0-9a-zA-Z]{4,9}@qq\\.com$");
    }

    //检查电话是否合法
    /*
    1. 11位
    2. 不能以0开头
    3. 不能有数字以外的字符
     */
    public static boolean cheakPhone(String phone){
        return phone.matches("^[1][3-9][0-9]{9}$");
        //   ^ $ 表示字符的开始和结束    第一位只能是1  第二位是3-9  后面9位是0-9
    }


}


在这里插入图片描述

\.是什么意思

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/873286.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Elasticsearch:无状态世界中的数据安全

作者&#xff1a;来自 Elastic Henning Andersen 在最近的博客文章中&#xff0c;我们宣布了支持 Elastic Cloud Serverless 产品的无状态架构。通过将持久性保证和复制卸载到对象存储&#xff08;例如 Amazon S3&#xff09;&#xff0c;我们获得了许多优势和简化。 从历史上…

Web3D 技术发展瓶颈在哪里?

Web3D 技术的发展瓶颈主要集中在以下几个方面&#xff1a; 1、性能和优化&#xff1a;尽管现代浏览器和硬件逐步提高了性能&#xff0c;但高质量的3D渲染仍可能导致性能瓶颈。特别是在移动设备上&#xff0c;图形渲染和计算可能会受到限制。建议合理控制好项目资源量&#xff…

实验记录 | 点云处理 | K-NN算法3种实现的性能比较

引言 K近邻&#xff08;K-Nearest Neighbors, KNN&#xff09;算法作为一种经典的无监督学习算法&#xff0c;在点云处理中的应用尤为广泛。它通过计算点与点之间的距离来寻找数据点的邻居&#xff0c;从而有效进行点云分类、聚类和特征提取。本菜在复现点云文章过程&#xff…

详解React setState调用原理和批量更新的过程

1. React setState 调用的原理 setState目录 1. React setState 调用的原理2. React setState 调用之后发生了什么&#xff1f;是同步还是异步&#xff1f;3. React中的setState批量更新的过程是什么&#xff1f; 具体的执行过程如下&#xff08;源码级解析&#xff09;&#x…

基于SpringBoot+Vue+MySQL的宿舍维修管理系统

系统展示 前台界面 管理员界面 维修员界面 学生界面 系统背景 在当今高校后勤管理的日益精细化与智能化背景下&#xff0c;宿舍维修管理系统作为提升校园生活品质、优化资源配置的关键环节&#xff0c;其重要性日益凸显。随着学生规模的扩大及住宿条件的不断提升&#xff0c;宿…

人机交互系统中的人脸讲话生成系统调研

《Human-Computer Interaction System: A Survey of Talking-Head Generation》 图片源&#xff1a;https://github.com/Yazdi9/Talking_Face_Avatar 目录 前言摘要一、背景介绍二、人机交互系统体系结构2.1. 语音模块2.2. 对话系统模块2.3. 人脸说话动作生成 三 人脸动作生成…

来啦| LVMH路威酩轩25届校招智鼎高潜人才思维能力测验高分攻略

路威酩轩香水化妆品(上海)有限公司是LVMH集团于2000年成立&#xff0c;负责集团旗下的部分香水化妆品品牌在中国的销售包括迪奥、娇兰、纪梵希、贝玲妃、玫珂菲、凯卓、帕尔马之水以及馥蕾诗等。作为目前全球最大的奢侈品集团LVMH 集团秉承悠久的历史&#xff0c;不断打破常规&…

【微处理器系统原理和应用设计第六讲】片上微处理器系统系统架构

一、概念辨析 首先来厘清以下概念&#xff1a;微处理器&#xff0c;微控制器&#xff0c;单片机&#xff0c;片上微处理器系统 &#xff08;1&#xff09;微处理器&#xff1a;即MPU&#xff08;Microprocessor Unit&#xff09;&#xff0c;微处理器是一种计算机的中央处理单…

如何打造个性化大学生聊天室?Java SpringBoot Vue实战,2025最新设计指南

✍✍计算机毕业编程指导师** ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java…

【深度学习】向量化

1. 什么是向量化 向量化通常是消除代码中显示for循环语句的技巧&#xff0c;在深度学习实际应用中&#xff0c;可能会遇到大量的训练数据&#xff0c;因为深度学习算法往往在这种情况下表现更好&#xff0c;所以代码的运行速度非常重要&#xff0c;否则如果它运行在一个大的数据…

【Linux】翻山越岭——进程地址空间_c语言父子进程地址空间

文章目录 一、是什么 写时拷贝 二、为什么三、怎么做 区域划分和调整 一、是什么 回顾我们学习C/C时的地址空间&#xff1a; 有了这个基本框架&#xff0c;我们对于语言的学习更加易于理解&#xff0c;但是地址空间究竟是什么❓我们对其并不了解&#xff0c;是不是内存呢&…

海外云服务器安装 MariaDB10.6.X (Ubuntu 18.04 记录篇二)

本文首发于 秋码记录 MariaDB 的由来&#xff08;历史&#xff09; 谈起新秀MariaDB&#xff0c;或许很多人都会感到陌生吧&#xff0c;但若聊起享誉开源界、业界知名的关系型数据库——Mysql&#xff0c;想必混迹于互联网的人们&#xff08;coder&#xff09;无不知晓。 其…

MonoHuman: Animatable Human Neural Field from Monocular Video 精读

一、共享双向变形模块 1. 模块的核心思想 共享双向变形模块的核心目标是解决从单目视频中生成不同姿态下的3D人体形状问题。因为视频中的人物可能处于各种动态姿态下&#xff0c;模型需要能够将这些不同姿态的几何形状进行变形处理&#xff0c;以适应标准的姿态表示并生成新的…

SVN下载安装使用方法

目录 &#x1f315;SVN是什么&#xff1f;&#x1f319;SVN跟Git比的优势&#x1f319;SVN的用处 &#x1f315;下载安装使用方法 &#x1f315;&#x1f319;⭐ &#x1f315;SVN是什么&#xff1f; 代码版本管理工具 它能记住你每次的修改 查看所有的修改记录 恢复到任何历…

【Linux网络】详解TCP协议(1)

&#x1f389;博主首页&#xff1a; 有趣的中国人 &#x1f389;专栏首页&#xff1a; Linux网络 &#x1f389;其它专栏&#xff1a; C初阶 | C进阶 | 初阶数据结构 小伙伴们大家好&#xff0c;本片文章将会讲解 TCP协议 的相关内容。 如果看到最后您觉得这篇文章写得不错&am…

【大数据】深入浅出Hadoop,干货满满

【大数据】深入浅出Hadoop 文章脉络 Hadoop HDFS MapReduce YARN Hadoop集群硬件架构 假设现在有一个PB级别的数据库表要处理。 在单机情况下&#xff0c;只能升级你的内存、磁盘、CPU&#xff0c;那么这台机器就会变成 “超算”&#xff0c;成本太高&#xff0c;商业公司肯…

通过卷积神经网络(CNN)识别和预测手写数字

一&#xff1a;卷积神经网络&#xff08;CNN&#xff09;和手写数字识别MNIST数据集的介绍 卷积神经网络&#xff08;Convolutional Neural Networks&#xff0c;简称CNN&#xff09;是一种深度学习模型&#xff0c;它在图像和视频识别、分类和分割任务中表现出色。CNN通过模仿…

8. GIS数据分析师岗位职责、技术要求和常见面试题

本系列文章目录&#xff1a; 1. GIS开发工程师岗位职责、技术要求和常见面试题 2. GIS数据工程师岗位职责、技术要求和常见面试题 3. GIS后端工程师岗位职责、技术要求和常见面试题 4. GIS前端工程师岗位职责、技术要求和常见面试题 5. GIS工程师岗位职责、技术要求和常见面试…

【高等代数笔记】线性空间(一到四)

3. 线性空间 令 K n : { ( a 1 , a 2 , . . . , a n ) ∣ a i ∈ K , i 1 , 2 , . . . , n } \textbf{K}^{n}:\{(a_{1},a_{2},...,a_{n})|a_{i}\in\textbf{K},i1,2,...,n\} Kn:{(a1​,a2​,...,an​)∣ai​∈K,i1,2,...,n}&#xff0c;称为 n n n维向量 规定&#xff08;规定…

【技术前沿】智能反向寻车解决方案:提升停车场用户体验与运营效率

亲爱的技术员及停车场管理者们&#xff0c;您是否曾遇到过车主在庞大的停车场中迷失方向&#xff0c;耗费大量时间寻找爱车的困境&#xff1f;这不仅影响了车主的停车体验&#xff0c;也无形中增加了停车场的管理难度和运营成本。本文专为解决这一痛点而生&#xff0c;介绍最新…