JAVA 正则表达式 及 案例

JAVA 正则表达式 及 案例

目录

  • JAVA 正则表达式 及 案例
  • 1.正则表达式Regex
    • 1.1 概述
    • 1.2 常见语法
    • 1.3 String提供了支持正则表达式的方法
    • 1.4 练习:测试输入身份证号

1.正则表达式Regex

1.1 概述

正确的字符串格式规则。
常用来判断用户输入的内容是否符合格式的要求,注意是严格区分大小写的。

1.2 常见语法

在这里插入图片描述

1.3 String提供了支持正则表达式的方法

Matches(正则) : 当前字符串能否匹配正则表达式
replaceAll(正则,子串) : 替换子串
split(正则) : 拆分字符串

1.4 练习:测试输入身份证号

创建包: cn.tedu.api
创建类: TestRegex.java

package cn.tedu.api;import java.util.Scanner;/**本类用作正则表达式的入门案例*/
public class TestRegex {public static void main(String[] args) {//1.编辑正则表达式//需求:接收用户输入的身份证号,判断用户输入的是否正确//身份证号的规律:共18位,前17位都是数字,最后一位有可能是数字,也有可能是XString regex = "[0-9]{17}[0-9X]";/**单个\在Java中有特殊的含义,表述转义符号,不认为这是一个单纯的斜杠* 所以如果想要表示斜杠,需要在它的前面加一个用来转义的斜杠* 也就是:写\\才表示这是一个单纯的斜杠* \t--制表符 \r--回车符 \n--换行符*/String regex2 = "\\d{17}[0-9X]";//2.提示并接收用户输入的身份证号System.out.println("请输入您的身份证号:");String input = new Scanner(System.in).nextLine();//3.判断用户输入的是否正确if(input.matches(regex)){System.out.println("恭喜你!输入正确");}else{System.out.println("很抱歉!输入错误!");}}
}

改进代码

package cn.tedu;import java.util.Scanner;/**本类用于正则表达式入门案例*/
//需求:接收用户输入的身份证号,并将判断的结果输出
public class TestRegex {public static void main(String[] args) {//1.编辑正则表达式//身份证号的规律:一共是18位,前17位是数字,第18位有可能是数字,也有可能是X//String regex = "[0-9]{17}[0-9X]";/*单个\在Java中有特殊的含义,表示转义符号,不认为是一个斜杠* 所以如果想要表示斜杠,需要在它的前面加一个用来转义的\* 也就是\\才表示成一个单纯的斜杠* \t -- 制表符 \r回车符 \n换行符*/String regex = "\\d{17}[0-9X]";//2.定义变量用来接收用户输入的身份证号:String input;//3.判断用户输入的数据是否符合正则表达式。如果不正确,继续输入do{System.out.println("请输入您的身份证号:");input = new Scanner(System.in).nextLine();if(input.matches(regex)){//如果身份证号正确System.out.println("恭喜你!输入正确!");return;//结束本方法}}while(!input.matches(regex));//只要不符合正则表达式,就继续输入}
}

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【深度学习】6-1 卷积神经网络 - 卷积层

卷积神经网络(Convolutional Neural Network,CNN)。 CNN 被用于图像识别、语音识别等各种场合,在图像识别的比赛中,基于深度学习的方法几乎都以 CNN 为基础。 首先,来看一下 CNN 的网络结构,了解 CNN 的大致框架。CNN…

亚马逊实践 | 构建可持续发展的架构模型

可持续发展概念源于对系统性文明危机和世界问题的科学和社会意识形态研究。世界级的进步学术社群和政治精英在二十世纪末就认识到了这些问题的存在。他们将即将到来的二十一世纪视为充满不确定性、全球灾难进程逐步升级的时代。可持续发展对多个领域产生影响,目前已…

【计算机网络】数据链路层--MAC媒体接入控制

1.概念 2.静态划分信道 2.1 频分复用 2.2 时分复用 2.3 波分复用 2.2 码分复用 2.3 习题1 2.4 应用举例 2.5 习题2 2.6 习题3 3.小结

adb 查询app占用的cup和内存

一、先将cpu定频 先进入shell 模式 adb shell 查看当前CPU的工作模式 cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor 然后把CPU工作模式设置为performance模式 echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor 改完后查看模式…

重定向爬虫和多线程爬虫

前言 重定向爬虫是指在抓取网页时,如果目标网站内部存在重定向机制,即当你访问一个网页时,服务器会把你重定向到另一个目标网页。重定向爬虫可以帮助我们发现这种重定向链接,从而更有效地抓取目标网站的内容。 要实现重定向爬虫…

Spring简介

1.Spring简介 1.1 为什么要学 Spring技术是JavaEE开发必备技能,企业开发技术选型命中率>90% 专业角度 简化开发,降低企业级开发的复杂性 框架整合,高效整合其他技术,提高企业级应用开发与运行效率 1.2 学什么 简化开发 IOC…

UE4/5用GeneratedDynamicMeshActor创建多个模型,并发生Boolean(两个网格体之间的,有3种模式)

目录 制作 只创建一个球: 效果: 制作多个效果: 制作: 效果: 代码: 一代码: 二代码: 制作 假如我们创建两个模型,第一个是之前就创建的正方体,而第二…

MATLAB与大数据:如何应对海量数据的处理和分析

第一章:引言 在当今数字化时代,大数据已经成为了各行各业的核心资源之一。海量的数据源源不断地涌现,如何高效地处理和分析这些数据已经成为了许多企业和研究机构面临的重要挑战。作为一种功能强大的数学软件工具,MATLAB为我们提供…

Unity 之 最新原生广告Ads接入 -- 助力增长游戏收益

Unity 之 最新Ads原生广告接入流程详解和工具类分享 一,注册 Unity Ads 广告 SDK二,下载 Unity Ads 广告 SDK三,配置 Unity Ads 广告 SDK3.1 广告位展示流程3.2 代码初始化 四,集成 Unity Ads 广告 SDK4.1 相关介绍4.2 代码分享 五…

HHU云计算期末复习(上)Google、Amazon AWS、Azure

文章目录 第一章 概论第二章 Google 云计算2.1 Google文件系统(GFS)2.2 MapReduce和Hadoop2.3 分布式锁服务Chubby2.4 分布式结构化数据表Bigtable存储形式主服务器子表Bigtable 相关优化技术 2.5 分布式存储系统MegastoreMegastoreACID语义基本架构核心…

Spring Boot是什么?详解它的优缺点以及四大核心

作者:Insist-- 个人主页:insist--个人主页 作者会持续更新网络知识和python基础知识,期待你的关注 目录 一、Spring Boot 是什么? 二、Spring Boot 的优缺点 1、优点 ①可快速构建独立的 Spring 应用 ②直接嵌入Tomcat、Jett…

响应数据加密解决方案

需求分析 响应数据加密是一种很重要的安全措施,可以保护数据在传输过程中不被未经授权的用户拦截、窃取或篡改。以下是响应数据加密需求分析: 响应数据必须进行加密: 所有响应数据必须进行加密,以保证数据在传输过程中的安全性。服务器可以采用HTTPS协议对响应数据进行加密…