java 正则表达式基础,实例学习资料收集大全 原创

Java 正则表达式基础

什么是正则表达式

正则表达式(Regular Expression)是一种用来描述字符串模式的工具,可以被用于用于搜索、匹配、替换等字符串操作。正则表达式本身是一个由字符和操作符组成的字符串。

在 Java 中,使用 java.util.regex 包中的类来实现正则表达式的操作。

正则表达式基础语法

  1. 字符匹配:用单个字符匹配目标字符串中出现的指定字符。例如,正则表达式 a 表示匹配目标字符串中出现的字符 a
  2. 字符类匹配:用一组字符匹配目标字符串中出现的一个字符。例如,正则表达式 [abc] 表示匹配目标字符串中出现的字符 abc
  3. 范围匹配:用一个范围匹配目标字符串中出现的一个字符。例如,正则表达式 [a-d] 表示匹配目标字符串中出现的字符 ad 中的任意一个。
  4. 负向字符类匹配:用一组不在指定字符集合中的字符匹配目标字符串中出现的一个字符。例如,正则表达式 [^abc] 表示不匹配目标字符串中出现的字符 abc
  5. 预定义字符类匹配:匹配一组经常使用的字符。例如,正则表达式 \\d 表示匹配任意一个数字,等效于 [0-9]
  6. 数量词:指定匹配前面字符的次数。例如,正则表达式 a{3} 表示匹配目标字符串中至少连续出现 3 个字符 a
  7. 或运算:匹配多个正则表达式之一。例如,正则表达式 a|b 表示匹配目标字符串中出现的字符 a 或字符 b
  8. 捕获组:找到一个子字符串并在匹配成功时将其分配给一个捕获组。例如,正则表达式 (a|b)c 可以匹配目标字符串中出现的 acbc,并将 ab 分别分配给捕获组 1。

Java 中的正则表达式

在 Java 中,使用 java.util.regex 包中的类实现正则表达式。其中,常用的类有 PatternMatcher

创建 Pattern 对象

要使用正则表达式,首先需要使用 Pattern 类的 compile() 方法创建一个 Pattern 对象。

Pattern pattern = Pattern.compile("正则表达式");

匹配 String 对象

使用 Matcher 类的 matches() 方法可以匹配一个 String 对象。

String str = "字符串";
boolean isMatch = pattern.matcher(str).matches();

匹配部分字符串

如果需要从目标字符串中匹配出子字符串并分配给捕获组,可以使用 Matcher 类的 group() 方法。

Pattern pattern = Pattern.compile("(\\d\\d)(\\w)");
String str = "12A";
Matcher matcher = pattern.matcher(str);
if (matcher.matches()) {
    String group1 = matcher.group(1); // 分配给第一个捕获组的内容
    String group2 = matcher.group(2); // 分配给第二个捕获组的内容
}

Java 中的正则表达式实例

以下是一些正则表达式的实例:

匹配电子邮件地址

Pattern pattern = Pattern.compile("^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$");
String email = "example@example.com";
boolean isMatch = pattern.matcher(email).matches();

匹配手机号码

Pattern pattern = Pattern.compile("^1[0-9]{10}$");
String phone = "12345678901";
boolean isMatch = pattern.matcher(phone).matches();

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java 正则表达式基础,实例学习资料收集大全 原创 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • 基于SQL中的数据查询语句汇总

    下面是“基于SQL中的数据查询语句汇总”的完整攻略。 基于SQL中的数据查询语句汇总 什么是数据查询语句? 数据查询语句是一种用来从数据库中检索数据的命令或语句。通过在SQL(Structured Query Language)中编写查询语句,可以轻松地访问、筛选和排序数据库中的数据。 数据库的基本操作 在进行数据查询之前,需要了解数据库的基本操作。以下是一…

    database 2023年5月22日
    00
  • php实现mysql数据库操作类分享

    下面是详细讲解“PHP实现MySQL数据库操作类分享”的完整攻略。 一、前言 MySQL 是一种关系型数据库管理系统,而 PHP 是一种强大的服务器端编程语言,两者的结合可以帮助我们快速实现数据的持久化,常见的操作包括增删改查等。在PHP中,我们可以使用面向对象的方式封装MySQL数据库操作,在此基础上形成MySQL数据库操作类,并把操作结果封装成对象的形式…

    database 2023年5月21日
    00
  • Java异常日志堆栈丢失的原因与排查

    Java异常日志堆栈丢失是我们在开发过程中常见的问题之一,也是比较棘手的问题之一。本文将详细讲解Java异常日志堆栈丢失的原因与排查的完整攻略。 什么是Java异常日志堆栈丢失 当Java程序运行时发生异常时,JVM会在控制台或日志文件中打印异常堆栈信息。这些异常堆栈信息是极其重要的,可以帮助我们找到异常的源头并修复问题。然而,在某些情况下,我们可能会发现日…

    database 2023年5月21日
    00
  • MySQL两种临时表的用法详解

    《MySQL两种临时表的用法详解》 什么是临时表 临时表是MySQL中一种非常有价值的工具,它是指一种在数据库连接关闭之前存在且存在于内存或者硬盘中的表。临时表不需要预定义,可以直接创建并使用,同时也是一种非常高效的用来协助完成数据分析任务的工具。 临时表的创建 局部临时表 局部临时表只在创建时所在的会话中存在,会话结束后自动销毁。局部临时表创建的语法如下:…

    database 2023年5月22日
    00
  • CentOs7.x安装Mysql的详细教程

    下面是CentOS7.x安装MySQL的完整攻略: 环境准备 在安装之前需要先准备好以下环境:- 安装好CentOS 7.x系统- 确认安装好了yum包管理器 安装mysql 在终端中输入以下命令,更新yum源和已安装的包: sudo yum update -y && sudo yum upgrade -y 安装mysql: sudo yum…

    database 2023年5月22日
    00
  • ThinkPHP 连接Oracle数据库的详细教程[全]

    下面我会为您详细讲解如何使用ThinkPHP连接Oracle数据库的完整攻略,包括安装Oracle客户端、配置连接信息、创建模型和执行查询操作。具体步骤如下: 安装Oracle客户端 在使用ThinkPHP连接Oracle数据库之前,需要先安装Oracle客户端。Oracle官方提供了客户端下载地址,根据自己的系统版本下载对应版本的客户端进行安装。安装过程中…

    database 2023年5月21日
    00
  • Redis(六)——高可用之哨兵sentinel配置与启动及主从服务宕机与恢复

    、主从复制高可用 #主从复制存在的问题: 1 主从复制,主节点发生故障,需要做故障转移,可以手动转移:让其中一个slave变成master 2 主从复制,只能主写数据,所以写能力和存储能力有限     哨兵是对Redis的系统的运行情况的监控,它是一个独立进程,它会独立运行,功能有二个: 通过发送命令,让Redis服务器返回监控其运行状态,包括主服务器和从服…

    Redis 2023年4月13日
    00
  • Windows下修改mysql的data文件夹存放位置的方法

    下面是“Windows下修改mysql的data文件夹存放位置的方法”的完整攻略。 1. 前置条件 首先,你需要在 Windows 系统上成功安装 MySQL,并且已经启动了 MySQL 服务。 2. 备份原始 data 文件夹 在进行任何修改之前,我们建议你先对原始的 data 文件夹进行备份,以防止数据丢失。 你可以通过以下命令来备份 data 文件夹:…

    database 2023年5月22日
    00
合作推广
合作推广
分享本页
返回顶部