第十一节 Java 正则表达式

Java正则表达式总结 Java 正则表达式 正则表达式定义了字符串的模式。 正则表达式可以用来搜索、编辑或处理文本。 正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别。 正则表达式实例 一个字符串其实就是一个简单的正则表达式,例如 Hello World 正则表达式匹配 “Hello World” 字符串。 .(点号)也是一个正则表达式,它匹配任何一个字符如:”a” 或 “1”。 下表列出... 阅读详情

1. 正则表达式简介

1.1使用正则表达式的好处:

(1)一个正则表达式就是一个描述规则的字符串
(2)只需要编写正确的规则,就可以让正则表达式引擎去判断目标字符串是否符合规则
(3)正则表达式是一套标准,可以用于任何语言
(4)JDK内置正则表达式引擎:java.util.regex
在这里插入图片描述

1.2 如何编写正则表达式

(1)精确匹配:“a&c",特殊字符需要转义,匹配(a&c)
(2)非ASCLL字符,比如中文字符,我们要用"\u####表示
(3)特殊符号 . 可以匹配任意一个字符:例如“a.c"可以匹配"abc"、"adc"等等,不可以匹配“abdc”等
(4)符号 \d 可以匹配一个数字:例如"00\d"可以“003”、“004”等等,不可以匹配"0023"等
(5)符号\w 可以匹配一个字母、数字或下划线:例如“java\w”可以匹配“javac”、“java8”、“java_”等,不可以匹配“java#”等
(6)符号\s可以匹配一个空白字符:例如“A\sB”可以匹配“A B”,“A B”tab键也算空白字符等,不可以匹配“AB”、“A B”
(7)符号\D可以匹配一个非数字:例如“00\D”可以匹配“00A”、“00B”等,不可以匹配“001”、“002”等
(8)符号\W可以匹配一个非字母、数字或下划线:例如“java\W”
可以匹配“java!”、“java ”等,不可以匹配“javaw”,“java2”等
(9)符号\S可以匹配一个非空白字符:例如“A\SB”可以匹配“A&B”、“ABB”等,不可以匹配“A B”、“A B”tab键
(10)修饰符*可以匹配任意个字符:例如:“A\d*”可以匹配“A”、“A1”、“A007”等,不可以匹配“AB”
(11)修饰符 + 可以匹配至少一个字符:例如“A\d+”可以匹配“A1”、“A007”等,不可匹配“A”、“AB”
(12)修饰符?可以匹配零个或一个字符:例如“A\d?”可以匹配“A”、“A1”等,不可匹配“A12”、“AB”
(13)修饰符{ n }可以匹配n个字符:例如“\d{ 6 }”可以匹配“123456”、“999999”等,不可以匹配“12345”,“1234A”
(14)修饰符{ n ,m}可以匹配n-m个字符:例如“\d{3 , 5}可以匹配”123“、”12345“等,不可以匹配”12“、”123456“等
在这里插入图片描述

2. 分组

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这是因为,正则表达式首先要编译成一个Pattern对象然后再进行匹配。
在这里插入图片描述
在这里插入图片描述

3. 复杂匹配规则

(1)^和KaTeX parse error: Undefined control sequence: \d at position 15: 匹配开头和结尾:例如:"^A\̲d̲{3}"可以匹配"A001"、“A999”等,不能匹配“A9999”、“B001”等
(2)[…]可以匹配范围内的字符:例如“[abc]1”可以匹配“a1”、“b1”、“c1,只能匹配范围内的一个字符,不可以匹配“ab1”、“x1”等。

还可以这样写“[a-f]1”可以匹配“a1”、“b1”、“f1”等,不可以匹配“g1”、“ab1”等

还可以这样写:“[a-f0-9]{6}”这样就就可以匹配a到f,0到9的六个字符的字符串,例如:“[a-f0-9]{6}”可以匹配“1a2b3c”、“ffffff”、等,不可以匹配“abc12”、“A0000F”等
还可以这样写:“[a-f0-9_]{6}”表示可以匹配0-9和a-f以及下划线这范围内的六个字符

[^…]可以匹配非范围内的字符:例如:“[^0-9]{6}”可以匹配非数字的六个字符
(3)AB|CD可以匹配AB或CD:例如“java|php”可以匹配java或php
例如“learn\s(java|php)”可以用来匹配learn java或learn php
如果去掉括号就只能匹配learn java或php了
在这里插入图片描述

4. 非贪婪匹配

(1)给定一个字符串表示的数字,判断该数字末尾0的个数
在这里插入图片描述
在这里插入图片描述
这里用?号来表示非贪婪匹配。
在这里插入图片描述
在这里插入图片描述

5. 使用正则表达式进行搜索和替换

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
反向引用
在这里插入图片描述
在这里插入图片描述

【Java学习】第18节:正则表达式 Java是一种广泛使用的编程语言,由Sun Microsystems(现在是Oracle Corporation)首次推出。它是一种跨平台的编程语言,意味着您可以编写一次代码,然后在多个不同的计算机系统上运行,而无需对其进行修改。Java被广泛用于开发各种类型的应用程序,包括企业级应用、移动应用、Web应用、游戏等。 阅读详情

相关推荐

C#连接数据库报Authentication to host ‘127.0.0.1‘ for user ‘root‘ using method ‘caching_sha2_password‘ fail

所以导致的,除了上边的办法,还可以把这个加密规则修改一下,这个的修改方式有很多,具体原因是因为MySQL8.0以前的加密规则是。

weixin_42209881的博客 4129

正则表达式学习记录-贪婪与懒惰

当正则表达式中包含能接受重复的限定符时,通常的行为是(在使整个表达式能得到匹配的前提下)匹配尽可能多的字符。以这个表达式为例:a.*b,它将会匹配最长的以a开始,以b结束的字符串。如果用它来搜索aabab的话,它会匹配整个字符串aabab。这被称为贪婪匹配。 有时,我们更需要懒

anchenyanyue的专栏 618

maxwell与steady state thermal 通过workbench耦合仿真

文章目录maxwellsteady state thermal maxwell 1加入maxwell并打开 2导入模型 3选择求解器类型:涡流求解器eddy current 4修改模型名字不能带_等特殊符号 5为模型赋材料 6设立3D边界,各边电流进出方向为0其余方向300 7设置激励条件,可设置电流大小,相位,方向 8设置集肤深度,选取中间铜导体的体然后设置,如何设置看帮助文档 9求解设置 迭代步数 收敛精度 交流电频率 10验证条件满足计算 11求解 发现无法求解,删除ai

roymustang的博客 9202

Java简单正则表达式实现

前言:由于工作中涉及对正则的使用,所以简单的整理一下Java中正则的使用,做一个自我检讨和笔记整理。 Java中校验某个字符串是否满足某个规则,可以简单到直接使用String类的matches方法。 例如: // 校验手机号码有效性 String regex = "^1[3|5|7|8|9]\\d{9}$"; String param = "17751033130"; boolean resu...

小熙的博客 5万+

Xilinx PCIe IP核示例工程仿真流程与关键任务解析

本文详细解析了Xilinx PCIe IP核示例工程的仿真流程与关键任务。通过搭建仿真环境、解读初始化日志,并深入剖析TSK_TX_MEMORY_WRITE_32等核心任务的TLP报文生成与交互过程,帮助开发者掌握PCIe IP核的仿真调试方法,为实际硬件设计提供可靠的验证基础。

weixin_28314575的博客 508

忘记安卓锁屏密码怎么办?3种方法教你用ADB恢复访问(含gesture.key解密)

本文详细解析了安卓设备锁屏密码的存储与加密机制,特别是gesture.key文件的解密原理。针对遗忘密码的常见问题,提供了三种核心恢复方法:利用ADB调试接口删除密码文件、对gesture.key进行离线分析与解密,以及应对高版本系统的替代方案。重点介绍了通过ADB工具在Recovery模式下操作的具体步骤,帮助用户在合法合规前提下恢复设备访问权限。

php55的博客 959

java正则判断11位手机号码_java-正则表达式判断手机号

要更加准确的匹配手机号码只匹配11位数字是不够的,比如说就没有以144开始的号码段,故先要整清楚现在已经开放了多少个号码段,国家号码段分配如下:移动:134、135、136、137、138、139、150、151、157(TD)、158、159、187、188联通:130、131、132、152、155、156、185、186电信:133、153、180、189、(1349卫通)以上这些只是过去已...

weixin_42400904的博客 7185

copilot基于 DeepSeek-R1 思路构建 VLA 自动驾驶强化学习系统

下面给出一个完整示例代码,结合 DeepSeek‑R1 的技术方法,实现一个端到端的 VLA(视觉+语言行动)自动驾驶深度强化学习系统。.2f。

ywfwyht的博客 775

一、内部类(inner class)

一、内部类(inner class) 1、定义 ​ 在一个类中,定义另一个类的代码结构,通常定义在类内部的类称为 “内部类” ,外面的类称为“外部类” , 在逻辑关系上 内部类与外部类是从属关系,比如 一个People类 存在收货地址类(收货人,收货联系方式) 2、分类 ​ 2.1、 普通内部类(inner class),一个类A中定义另一个类B,其中类B就是类A的内部类,也是类A的一部分 ​ public class People { priv

bdubvxhbxb的博客 517

传感器校准与标定:传感器的灵敏度校准_(11).常见传感器的灵敏度校准方法

线性校准:适用于传感器输出与输入之间存在线性关系的情况。通过收集数据并使用最小二乘法拟合线性方程,可以确定斜率和截距,从而实现校准。非线性校准:适用于传感器输出与输入之间存在非线性关系的情况。通过收集数据并使用非线性拟合方法(如最小二乘法),可以确定多项式或其他非线性方程的参数,从而实现校准。温度补偿校准:适用于传感器在不同温度下输出特性变化的情况。通过收集不同温度下的数据并使用温度补偿方程,可以提高传感器在不同温度下的测量精度。其他校准方法。

2401_87715305的博客 918

自建 HTML获取腾讯六宫格点选图片验证码素材,实现刷新批量获取图片方便训练

通过自建 HTML 页面,可以方便地获取腾讯六宫格二维码素材,不仅过程简单,而且可以灵活配置各种参数。希望这篇文章能帮助到需要相关素材的小伙伴。如果你有其他问题或者更好的方法,欢迎留言交流!

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 492

Java 正则表达式

介绍 前段时间使用Java的正则表达式做一些字符串匹配的任务,现将学到的正则表达式的知识整理成文。 Java中Spring.class涉及到正则表达式。如Spring.split(), matches(),replaceAll()等方法。 Java中更一般使用正则表达式的方式是利用Pattern.class和Matcher.class,所在package为java.util.regex J...

学而不厌 诲人不倦 3万+

生成模型实战 | StyleGAN详解与实现

StyleGAN 能够生成非常高分辨率人脸图像的关键在于,在增加分辨率的步骤中逐步增加生成网络和判别网络的复杂性,以便在每一步中,两个模型都可以很好地完成任务。我们学习了如何通过确保每个分辨率的特征由一个独立的输入(称为风格向量)来控制,从而操纵生成图像的风格,以及如何通过将图像之间的风格进行交换来操作不同图像的风格。

盼小辉丶的博客 7641

Java——正则表达式详解

Java对正则表达式的支持是从1.4版本开始的,此前的JRE版本不支持正则表达式。Java语言中的正则表达式匹配功能主要是通过和类实现的。find():在一个字符串里寻找一个给定模式的匹配:用一个给定的模式尝试匹配一个字符串的开头matches():用一个给定的模式去尝试匹配一个完整的字符串:进行替换操作,对所有的匹配都进行替换:进行替换操作,只对第一个匹配进行替换compile():把一个正则表达式编译成一个模式flags():返回某给定模式的匹配标志matches()

吴声子夜歌的博客 2万+

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

【Java 基础篇】Java 正则表达式

本篇博客介绍了 Java 正则表达式的基本概念、语法和常用操作。我们学习了如何创建正则表达式模式对象、匹配器对象,以及如何使用它们进行字符串的匹配、提取和替换操作。正则表达式在 Java 程序中具有广泛的应用,可以帮助我们处理文本数据,提取关键信息,进行格式验证等。通过灵活运用正则表达式,我们可以更高效地处理字符串操作。希望本篇博客对你理解和使用 Java 正则表达式有所帮助。祝你在 Java 编程中取得更多的成功!

繁依Fanyi的博客 1万+

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

第二十节 Java 正则表达式

Java 正则表达式

2301_78772942的博客 1299

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Java正则表达式

介绍并简单使用Java正则表达式

m0_62946761的博客 7255

Java第十一期(正则表达式)

正则表达式(regular expression,regex,regexp,RE)顾名思义,是一种匹配字符串的模式。

2402_88323439的博客 580

第二百零二节 Java正则表达式教程 - Java正则表达式模式

第二百零二节 Java正则表达式教程 - Java正则表达式模式

2301_78772942的博客 664

第二百零五节 Java正则表达式教程 - Java正则表达式边界、Java正则表达式组

第二百零五节 Java正则表达式教程 - Java正则表达式边界、Java正则表达式组

2301_78772942的博客 772

【JAVA SE】第十一章 正则表达式、包装类和BigDecimal

【JAVA SE】第十一章 正则表达式、包装类和BigDecimal

2022年毕业的萌新程序猿,输出一下自己的学习内容~ 886

Java中使用正则表达式

迅速上手:在其他语言中会使用正则表达式请参考如下代码示例。[代码] 如不会,以下是详细介绍 一、正则表达式及其语法 正则表达式是文本匹配的一种方法。 一些常用的语法如下:. - 匹配除换行符以外的所有字符。 \d,\w,\s - 匹配数字、字符、空格。 \D,\W,\S - 匹配非数字、非字符、非空格。 我iHIT - 匹配 我iHIT 整个字符串。...

CyanTangerine的博客 6635

第二百零一节 Java正则表达式教程 - Java正则表达式元字符

第二百零一节 Java正则表达式教程 - Java正则表达式元字符

2301_78772942的博客 941
上一篇: 第十节 Java 网络编程
下一篇: 第十二节 Java 反射机制
_乐颜
博客等级 码龄7年 15粉丝 28原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值