Java正则表达式,不定期更新

news2024/12/27 15:28:20

Java正则表达式

  • 1. 匹配数字(包含负数、小数)
  • 2. 匹配不是纯数字和纯字母且需要8位以上的密码
  • 3. 密码:字母、数字、符号(_-+*.,!@#符号可自定义)三选二
  • 4. 密码:必须包含大写、小写、数字、符号(_-+*.,!@#符号可自定义)四种
  • 5. 匹配年月日(除2月不正常)如:2023-01-01 2023 01 01 2023/01/01 2023,01,01
  • 6. 匹配IP地址 IPV4
  • 7. 匹配手机号码
  • 8. 身份证(18位,含19xx、20xx、21xx年及相应2月29)
  • 9. 匹配网页中图片链接(格式根据需要修改)
  • 10. 匹配不包含 feature/ 和 bug 的字符串
  • 11. 匹配文本(不包含符号)
  • 12. 匹配字符串 [以AA或BB或CC开头(包含AA、BB、CC),并且以DD或FF结束(包含DD、FF)]
  • 13. 匹配 issue 中的文件和图片
  • 常用的在线测试工具

积累了一些工作中用到的正则表达式,只在 Java 语言中测试过,少数在 Python 语言。可参考,欢迎讨论、修正。

1. 匹配数字(包含负数、小数)

^[-|+]?[0-9]+.?[0-9]*$

在这里插入图片描述

2. 匹配不是纯数字和纯字母且需要8位以上的密码

^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{8,}$

在这里插入图片描述
在这里插入图片描述

3. 密码:字母、数字、符号(_-+*.,!@#符号可自定义)三选二

^(?![0-9]+$)(?![a-zA-Z]+$)(?![_\-*+.,!@#]+$)[0-9a-zA-Z_\-+*.,!@#]{8,20}$

4. 密码:必须包含大写、小写、数字、符号(_-+*.,!@#符号可自定义)四种

^(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z])(?=.*[_\-*+.,!@#])[0-9a-zA-Z_\-+*.,!@#]{8,20}$

在这里插入图片描述

5. 匹配年月日(除2月不正常)如:2023-01-01 2023 01 01 2023/01/01 2023,01,01

\d{4}.?(((0[13578]|1[02]).?(0[1-9]|([12]\d)|3[0-1]).?)|(02.?([01]\d|2[0-8]))|((0[469]|11).?([0-2]\d|30)))(?=\s|\|)

6. 匹配IP地址 IPV4

((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})(\.((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})){3}

7. 匹配手机号码

^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$

8. 身份证(18位,含19xx、20xx、21xx年及相应2月29)

^[1-9][0-7]\d{4}(((19|20|21)\d{2}(((0[13578]|1[02])(0[1-9]|([12]\d)|3[0-1]))|(02([01]\d|2[0-8]))|((0[469]|11)([0-2]\d|30))))|(((19(09|17|28|47))|(20(04|23|42|99))|(21(37|86)))0229))\d{3}(\d|X|x)$

9. 匹配网页中图片链接(格式根据需要修改)

(?<=<img.{0,1024}src=\")(https?)://.*?[.](jpe?g|png|gif)

10. 匹配不包含 feature/ 和 bug 的字符串

^(?!.*feature/|.*bug).*$

11. 匹配文本(不包含符号)

\s*[一-龥\w]*\s*

在这里插入图片描述

12. 匹配字符串 [以AA或BB或CC开头(包含AA、BB、CC),并且以DD或FF结束(包含DD、FF)]

(?=AA|BB|CC)(.|\n)+?(DD|FF)

在这里插入图片描述

13. 匹配 issue 中的文件和图片

(?<=!?\[.+\]\().+?(\.(png|xlsx|xls|docx|doc|pdf|vsdx|drawio))

在这里插入图片描述

常用的在线测试工具

  • regex101
  • jsons.cn
  • oschina.net

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

车道线检测|利用边缘检测的原理对车道线图片进行识别

前言 那么这里博主先安利一些干货满满的专栏了&#xff01; 这两个都是博主在学习Linux操作系统过程中的记录&#xff0c;希望对大家的学习有帮助&#xff01; 操作系统Operating Syshttps://blog.csdn.net/yu_cblog/category_12165502.html?spm1001.2014.3001.5482Linux S…

工程监测振弦采集仪的解决方案案例解释

振弦采集仪是一种用于测量结构物的振动状态和应力变化的高精度仪器&#xff0c;广泛应用于建筑、桥梁、隧道、地铁等工程领域。以下是一些常见的解决方案案例分析&#xff1a; 基础监测方案&#xff1a;对于大型建筑或桥梁工程&#xff0c;需要对基础进行实时监测。使用振弦采集…

System类 BigInterger BigDecimal

System类 常用方法和案例 exit&#xff1a; 退出当前程序 System.out.println("zhang"); // 0表示一个正常退出的状态 System.exit(0); System.out.println("cheng");System.arraycopy&#xff1a; 复制数组元素&#xff0c;比较适合底层的调用&#xf…

基于linux下的高并发服务器开发(第二章)- 2.2 进程状态转换

01 / 进程的状态 &#xff08;1&#xff09;三态模型 进程状态分为三个基本状态&#xff0c;即就绪态&#xff0c;运行态&#xff0c;阻塞态 &#xff08;2&#xff09;五态模型 在五态模型中&#xff0c;进程分为新建态&#xff0c;就绪态&#xff0c;运行态&#xff0c;阻…

mongodb练习---增删改查

环境&#xff1a; 1. 创建一个数据库 名字grade 2. 数据库中创建一个集合名字 class 3. 集合中插入若干数据 文档格式如下 &#xff5b;name:zhang,age&#xff1b;10,sex:m,hobby:[a,b,c]&#xff5d; hobby: draw sing dance basketball football pingpong compu…

Java8实战-总结2

Java8实战-总结2 基础知识方法和Lambda传递代码&#xff1a;一个例子从传递方法到Lambda 基础知识 方法和Lambda Scala和Groovy等语言的实践已经证明&#xff0c;让方法等概念作为一等值可以扩充程序员的工具库&#xff0c;从而让编程变得更容易。一旦程序员熟悉了这个强大的…

理解LLM中的ReAct

large language models (LLMs)大语言模型在语义理解和交互式决策方面有着不错的表现。ReAct在一次交互中循环使用推理和行动两个操作解决复杂问题&#xff0c;推理即利用模型自身语义理解能力&#xff0c;行动则利用模型以外的能力&#xff08;如计算、搜索最新消息&#xff0c…

OpenCv之滤波器

目录 一、卷积 二、方盒滤波与均值滤波 三、高斯滤波 四、中值滤波 五、双边滤波 一、卷积 图像卷积就是卷积核在图像上按行华东遍历像素时不断的相乘求和的过程 相关知识点: 步长:就是卷积核在图像上移动的步幅.(为充分扫描图片&#xff0c;步长一般为1)padding:指在图片…

跨服务器跨库数据联合查询

今天群里有人问多个数据源, 可否显示在一个dbgrid, 我感觉是可以的 应该有两种办法 1,如果你两个服务器上都是用的mssqlserver, 那比较好办的, 如果不同数据库,如一个mssql,一个oracle。 则需要ssms方式创建。 通过SSMS查看,如果Microsoft OLE DB Provider for …

docekr-compose搭建redis集群(三主三从)

硬件&#xff1a;三台主机 172.50.2.40 172.50.2.41 172.50.2.42 需求&#xff1a;不想让它随机分配主从关系。想指定主从关系&#xff0c;如下&#xff1a; 主节点&#xff1a;172.50.2.40:6379&#xff0c;从节点172.50.2.41:6378 主节点&#xff1a;172.50.2.41:6379&…

C波段可调谐激光器控制软件系统

花了两周时间&#xff0c;利用下班时间&#xff0c;设计了一个ITLA可调谐激光器控制系统&#xff0c;从硬件到软件。下面这个图片整套硬件系统&#xff0c;软件硬件都自己设计&#xff0c;可以定制&#xff0c;做到单片机问题也不大。相当于一套光源了 这是软件使用的界面&…

PyTorch中的torch.nn.Linear函数解析

torch.nn是包含了构筑神经网络结构基本元素的包&#xff0c;在这个包中&#xff0c;可以找到任意的神经网络层。这些神经网络层都是nn.Module这个大类的子类。torch.nn.Linear就是神经网络中的线性层&#xff0c;可以实现形如yXweight^Tb的加和功能。 nn.Linear()&#xff1a;…

Linux网络---网络预备

文章目录 计算机网络背景计算机网络协议网络传输基本流程 网络中的地址管理 一、计算机网络背景 独立模式: 计算机之间相互独立; 网络互联: 多台计算机连接在一起, 完成数据共享; 局域网LAN: 计算机数量更多了, 通过交换机和路由器连接在一起 广域网WAN: 将远隔千里的计算机…

基于Javaweb实现ATM机系统开发实战(十二)用户转账功能实现

还是老规矩&#xff0c;先看前端传来怎样的参数&#xff1a; <% page language"java" contentType"text/html; charsetUTF-8" pageEncoding"UTF-8"%> <% taglib prefix"c" uri"http://java.sun.com/jsp/jstl/core"…

本地安装Linux虚拟机(超详细)

本文已收录于专栏 《运维》 目录 安装前准备虚拟机软件Linux镜像 安装过程中创建虚拟机安装linux系统 安装后测试 安装前准备 虚拟机软件 需要下载一个虚拟机软件&#xff0c;比如VirtualBox或VMware Workstation。这些软件可以创建和管理虚拟机。 这是VMware的官网&#xff1…

ceph集群(一)

ceph 一、存储基础分布式存储&#xff08;软件定义的存储 SDS&#xff09; 二、Ceph 简介Ceph 优势Ceph 架构Ceph 核心组件OSD 存储后端Ceph 数据的存储过程Ceph 集群部署 三、基于 ceph-deploy 部署 Ceph 集群实验Ceph 生产环境推荐&#xff1a;Ceph 环境规划部署 Ceph 集群 一…

Linux环境下,通过Docker搭建及配置RabbitMQ

&#x1f60a; 作者&#xff1a; 一恍过去 &#x1f496; 主页&#xff1a; https://blog.csdn.net/zhuocailing3390 &#x1f38a; 社区&#xff1a; Java技术栈交流 &#x1f389; 主题&#xff1a; Linux环境下&#xff0c;通过Docker搭建及配置RabbitMQ ⏱️ 创作时间…

SpringBoot--整合FreeMarker--使用/实例

原文网址&#xff1a;SpringBoot--整合FreeMarker--使用/实例_IT利刃出鞘的博客-CSDN博客 简介 本文介绍SpringBoot如何使用FreeMarker。 配置文件 application.yml spring:#模板引擎 freemarkerfreemarker:# 模板后缀suffix: .ftl# 是否启用模板缓存cache: false# 模板编…

二、MySQL启动和客户端连接

一、启动 方法一&#xff1a; 1、winR&#xff0c;输入services.msc&#xff0c;按回车 2、找到MySQL&#xff0c;右键-启动/停止 MySQL安装后&#xff0c;默认已启动。 方法二、 1、winR&#xff0c;输入cmd&#xff0c;打开命令行 2、输入启动与停止命令 二、客户端连接 …

如何使用ArcGIS Pro进行洪水淹没分析

伴随Esri将重心越来越多的放在ArcGIS Pro上,以后ArcGIS的使用场景可能会越来越少,所以我们可以提前接触并使用ArcGIS Pro,做好相关准备。这里为大家介绍一下在ArcGIS中常见的操作——洪水淹没分析在ArcGIS Pro中如何实现。 01 加载数据 在菜单栏上点击插入,点击新建地图,…