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日

相关文章

  • MySQL中Replace语句用法实例详解

    下面我就详细讲解一下“MySQL中Replace语句用法实例详解”的攻略。 什么是Replace语句 Replace语句是用于替换/更新表中数据的MySQL命令。该命令可以替换掉已有的记录,如果记录不存在,则会插入一条新记录。语法如下: REPLACE [LOW_PRIORITY | DELAYED] [INTO] table_name [(col_name…

    database 2023年5月22日
    00
  • t-sql/mssql用命令行导入数据脚本的SQL语句示例

    t-sql/mssql用命令行导入数据脚本的SQL语句示例攻略 在t-sql/mssql中,可以通过命令行导入数据脚本来进行数据导入。下面是完整的攻略: 创建数据表 在导入数据之前,需要先创建数据表。可以使用以下sql语句: CREATE TABLE [dbo].[example_table]( [id] [int] NOT NULL, [name] [nv…

    database 2023年5月21日
    00
  • mysql数据库修改数据表引擎的方法

    下面是详细的mysql数据库修改数据表引擎的方法攻略。 1. 查看数据表引擎 使用SHOW CREATE TABLE语句可以查看表的创建语句,其中会显示该表当前的引擎类型。 示例如下: SHOW CREATE TABLE `table_name`; table_name表示要查看的表的名称。 2. 修改数据表引擎 要修改一个表的引擎类型,可以使用ALTER …

    database 2023年5月19日
    00
  • SQL语句中EXISTS的详细用法大全

    下面详细讲解一下“SQL语句中EXISTS的详细用法大全”: 什么是EXISTS? EXISTS是一个用于判断子查询是否返回数据的操作符号,如果子查询返回了至少一行数据,那么就会返回True,否则返回False。 EXISTS的语法 EXISTS的语法如下: SELECT column_name(s) FROM table_name WHERE EXISTS…

    database 2023年5月18日
    00
  • SQL Server代理服务无法启动的解决方法

    下面是 SQL Server 代理服务无法启动的解决方法的完整攻略: 问题描述 当我们尝试启动 SQL Server 代理服务时,会出现以下错误: Windows could not start the SQL Server Agent (MSSQLSERVER) service on Local Computer. Error 1067: The proc…

    database 2023年5月21日
    00
  • centos 7安装mysql5.5和安装 mariadb使用的命令

    安装 MySQL 5.5 首先,我们需要在 CentOS 7 中安装 remi-release 和 epel-release 源。 yum install epel-release yum install http://rpms.famillecollet.com/enterprise/remi-release-7.rpm 接着,我们需要启用 remi 源中…

    database 2023年5月22日
    00
  • Mysql 日期时间 DATE_FORMAT(date,format)

    当我们在使用 MySQL 数据库时,常常会遇到对日期时间进行格式化输出的需求。MySQL 提供了 DATE_FORMAT() 函数用来格式化日期时间值。 DATE_FORMAT() 函数接受两个参数:date和format。其中,date为日期时间值,可以是一个字符串,也可以是一个合法的日期时间类型的格式;format则为表示日期时间输出格式的字符串。 日期…

    database 2023年5月22日
    00
  • CentOS7 64位安装mysql图文教程

    CentOS7 64位安装MySQL图文教程 本教程将指导您在CentOS7 64位操作系统上安装MySQL数据库,经过简单的准备,我们将通过yum包管理器完成MySQL的下载和安装,让您快速完成MySQL安装及配置。 准备工作 在开始安装MySQL之前,确保您的系统已经升级并安装了最新版的CentOS并连接到互联网。 1. 确认系统版本 首先,我们需要确认…

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