Java中正则表达式的语法以及matches方法的使用方法

 更新时间:2024年05月13日 09:51:30   作者:Alice763333  
正则表达式(Regular Expression)是一门简单语言的语法规范,是强大、便捷、高效的文本处理工具,这篇文章主要给大家介绍了关于Java中正则表达式的语法以及matches方法的使用方法,文中通过代码介绍的非常详细,需要的朋友可以参考下

正则表达式的语法

注意事项

在 Java 中,\\ 表示:我要插入一个反斜线,从而使其后的字符具有特殊的意义。在 Java 中正则表达式中则需要有两个反斜杠才能被解析为转义作用。可以简单的理解在 Java 的正则表达式中,两个 \\ 代表其他语言中的一个 \,所以表示一位数字的正则表达式是 \\d,而表示一个普通的反斜杠是 \\。

字符

1.预定义字符类

●.表示任何字符\.进行转义

●\d数字: [0-9]

[]:用于定义反向字符类。

●\D非数字[^ 0-9]

●\w单词字符: [a-zA-Z. _0-9] (. _是下划线)

●\W非单词字符: [^ \w]

2.字符类

●[abc]a、b、或c .

●[^abc]任何字符,除了a、 b、或c

●[a-zA-Z] a到z或A到Z, 两头的字母包括在内(范围) 简写[A-z]

3.Greedy数量词

●X? X,一次或一次也没有

XX,零次或多次

●X+X,一次或多次

●X{n}X, 恰好n次

●X{n,}X, 至少n次

●X{n,m}X, 至少n次,但是不超过m次n-m次

matches方法

在Java中,matches()方法是一个字符串方法,用于检查该字符串是否与给定的正则表达式匹配。

语法

public boolean matches(String str)

参数

str为匹配字符串的正则表达式

返回值

这个方法返回一个布尔值,如果字符串与正则表达式匹配,那么返回true,否则返回false。

实例

实例1

public class Main {
    public static void main(String[] args) {
        String email = "example@example.com";
        boolean isValid = email.matches("[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+");
        System.out.println("邮箱地址是否有效:" + isValid);
    }
}

正则表达式解析:

  • [\\w-]+:匹配一个或多个字母、数字、下划线或连字符。
  • (\\.[\\w-]+)*:匹配0个或多个以点号开头,后面跟一个或多个字母、数字、下划线或连字符的组合。
  • @:匹配字符"@"。
  • [\\w-]+:匹配一个或多个字母、数字、下划线或连字符。
  • (\\.[\\w-]+)+:匹配一个或多个以点号开头,后面跟一个或多个字母、数字、下划线或连字符的组合。

 实例2

public class Main {
    public static void main(String[] args) {
        String phoneNumber = "13800138000";
        boolean isValid = phoneNumber.matches("1[3-9]\\d{9}");
        System.out.println("手机号码是否有效:" + isValid);
    }
}

正则表达式解析:

  • 1:匹配字符"1"。
  • [3-9]:匹配数字3到9之间的任意一个数字。
  • \\d{9}:匹配9个数字。

总结 

到此这篇关于Java中正则表达式的语法以及matches方法使用的文章就介绍到这了,更多相关Java正则语法及matches方法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • IDEA 2021.1 操作SVN 最新超详细教程(图文)

    IDEA 2021.1 操作SVN 最新超详细教程(图文)

    本教程将通过idea从svn服务器中的任意一个分支检出代码(本文采用branches),然后再idea中创建新的分支、提交代码、拉取代码、合并分支等操作进行一一记录,暂不包含代码合并,对idea2021.1操作svn相关知识感兴趣的朋友一起学习下吧
    2021-05-05
  • 最新Spring Security的基于内存用户认证方式

    最新Spring Security的基于内存用户认证方式

    本文讲解SpringSecurity内存认证配置,适用于开发、测试等场景,通过代码创建用户及权限管理,支持密码加密,虽简单但不持久化,生产环境推荐使用数据库或JWT等认证方式,感兴趣的朋友一起看看吧
    2025-07-07
  • 解决maven中只有Lifecycle而Dependencies和Plugins消失的问题

    解决maven中只有Lifecycle而Dependencies和Plugins消失的问题

    这篇文章主要介绍了maven中只有Lifecycle而Dependencies和Plugins消失的问题及解决方法,本文通过图文的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2020-07-07
  • SpringBoot @ConfigurationProperties + Validation实现启动期校验解决方案

    SpringBoot @ConfigurationProperties + Validat

    本文给大家介绍SpringBoot @ConfigurationProperties + Validation实现启动期校验解决方案,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2025-09-09
  • JAVA实现基于Tcp协议的简单Socket通信实例

    JAVA实现基于Tcp协议的简单Socket通信实例

    本篇文章主要介绍了JAVA实现基于Tcp协议的简单Socket通信实例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • Springboot的application.properties或application.yml环境的指定运行与配置方式

    Springboot的application.properties或application.yml环境的指定运行与配置方

    本文主要介绍了Spring Boot中配置文件的多种使用方式,包括配置文件的命名、激活、路径指定以及优先级,并结合示例进行了详细说明
    2025-11-11
  • Java8日期类LocalDate、LocalTime和LocalDateTime使用方法详解

    Java8日期类LocalDate、LocalTime和LocalDateTime使用方法详解

    这篇文章主要给大家介绍了关于Java8日期类LocalDate、LocalTime和LocalDateTime使用方法的相关资料,LocalDateTime是JDK1.8出现的新特性,解决线程不安全的问题,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-11-11
  • Java实现简易生产者消费者模型过程解析

    Java实现简易生产者消费者模型过程解析

    这篇文章主要介绍了Java实现简易生产者消费者模型过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-06-06
  • Java10新特性解读

    Java10新特性解读

    这篇文章主要介绍了Java10新特性的相关资料,帮助大家更好的理解和使用Java,感兴趣的朋友可以了解下
    2021-02-02
  • Java设计模式之备忘录模式实现对象状态的保存和恢复

    Java设计模式之备忘录模式实现对象状态的保存和恢复

    本文介绍Java设计模式之备忘录模式,该模式可以实现对象状态的保存和恢复。通过详细讲解备忘录模式的原理、实现方法和应用场景,帮助读者深入理解该设计模式,并提供示例代码和技巧,便于读者实际应用
    2023-04-04

最新评论