当前位置: 首页 > news >正文

JAVASE(十五)正则表达式

目录

一、概念

二、使用

1.字面(普通)字符

2.元字符

(1)单个字符

(2)多个字符


一、概念

正则表达式是一种使用单个字符串来实现匹配、查找或替换文本模式的工具。它包括普通字符和元字符,可简写为regex。

二、使用

在上一篇中的String类中的spilt方法、replaceALL方法以及replaceFirst方法都有用到正则表达式作为参数。本篇用String类的matches方法做示例。

matches方法要求是整个字符串完全符合正则表达式的要求时,才会返回真。

1.字面(普通)字符

即可以直接进行匹配的字符,比如2,a,!等。注意一定要写成字符串的形式。

如:

 

结果为:

 

2.元字符

(1)单个字符

比如[0-9][a-z][A-z]表示指定范围内的任意字符。

当使用matches时,被匹配的字符串不是单个字符就会报错。

 注意区分[A-z][A-Z],前面的是大小写字母都可以,后面的只能是大写字母。

结果如下:

 

还有\d\D\Wx|y等字符。

(2)多个字符

表示一次或者0次。  相比于单个字符,可以匹配至多出现一次的情况。如:

结果:

 

需要注意的是,s1的值和[0-9]不匹配,看似代表着出现了0次,但是返回的是false。这是因为

字符存在但类型不符‌并不属于出现了0次。0次只有在空字符串时成立。

 * 表示0次或者多次。      +表示一次或者多次。

可以匹配长度大于等于1的字符串,在matches方法中要求字符串中的每个字符都要符合正则表达式。

如:

运行结果:

 

也可以用   {n}  表示固定n位 ,{n,}至少匹配n次, {n,m}匹配n到m次

运行结果:

 

还有其余字符不再一一详述,将这些字符结合起来运用,可以实现验证格式,比如手机号,邮箱,密码等等。

比如要求密码由字母和数字或下划线组成,且首部必须是大写字母,至少8位。

运行结果:

 

http://www.dtcms.com/a/106467.html

相关文章:

  • 2024年最新版零基础详细Java知识笔记【反射】⑩
  • Python实现 MCP 客户端调用(高德地图 MCP 服务)查询天气工具示例
  • Linux系统
  • Oracle 23ai Vector Search 系列之3 集成嵌入生成模型(Embedding Model)到数据库示例,以及常见错误
  • 16变量命名风格
  • windows部署docker
  • electron-update + nginx热更新
  • 【深度学习:进阶篇】--2.1.多分类与TensorFlow
  • 2025 年山东危化品经营单位考试攻略分享​
  • 二分查找与二叉树中序遍历——面试算法
  • OpenCV单窗口显示多图片
  • MySQL分组的时候遇到ONLY_FULL_GROUP_BY报错和解决
  • html+css+javaScript实现一个扫雷游戏
  • MATLAB 代码学习
  • Spring Boot 3.0 + JDK 17整合SpringDoc实战指南
  • 清明假期在即
  • 5G网络中SIB System Information Blocks系统信息块
  • 安美数字酒店宽带运营系统存在SQL注入漏洞
  • 云端商标管理系统如何确保用户数据安全?
  • 《永动之城的舞者》
  • Spring Boot 集成 Redis 连续操作键值对示例
  • MySQL性能:存储过程+触发器基础实战攻略
  • Mysql中,利用窗口函数来优化掉子查询或者group by
  • IPD推进中关键角色与岗位(二)系统工程师SE确保产品开发过程的高效协同,减少项目失败的风险
  • mysql数据库通过命令行导入sql文件
  • Rust 中的高效视频处理:利用硬件加速应对高分辨率视频
  • 【2025】实操成功-使用Python连接谷歌邮箱发送邮件
  • PostgreSQL:高级SQL特性
  • 【接口重复请求】axios通过AbortController解决页面切换过快,接口重复请求问题
  • windosw11中的.msi文件打不开该怎么办?