JAVA中正则表达式小总结(整理)

JAVA中正则表达式小总结(整理)

正则表达式的基本语法

正则表达式的语法分为两个部分,一个是元字符的语法,一个是限定符的语法。元字符代表一种类型的字符,在正则表达式中可以被用于匹配对应的字符,限定符用于限定匹配的次数。

  • 元字符的语法
元字符 说明
. 匹配任意单个字符
\ 转义字符
[] 匹配中括号内的任意一个字符
[^] 匹配不在中括号内的任意一个字符
() 匹配括号内的表达式
* 重复匹配0次或多次
+ 重复匹配1次或多次
? 重复匹配0次或1次
\d 匹配数字
\D 匹配非数字
  • 限定符的语法
限定符 说明
{m,n} 重复匹配m次到n次
{m,} 重复匹配m次或多次
{m} 重复匹配m次

在JAVA中使用正则表达式

在JAVA中使用正则表达式需要先将正则表达式编译成Pattern对象,然后再通过Matcher对象来进行匹配。

String regex = "a(b)+";
String input = "abbbbababbbb";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(input);
while (matcher.find()) {
    System.out.println(matcher.group());
}

上面的代码使用了正则表达式"ab+"来匹配字符串"abbbbababbbb"中的所有匹配结果。其中,find()方法用于寻找下一个匹配结果,group()方法用于获取当前匹配结果的字符串。

常见正则表达式应用场景举例

匹配身份证号码

String regex = "\\d{17}[0-9Xx]";
String input = "330302198602058252";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(input);
if (matcher.matches()) {
    System.out.println("身份证号码格式正确");
} else {
    System.out.println("身份证号码格式错误");
}

匹配手机号码

String regex = "^1[3-9]\\d{9}$";
String input = "13812345678";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(input);
if (matcher.matches()) {
    System.out.println("手机号码格式正确");
} else {
    System.out.println("手机号码格式错误");
}

总结

  • 正则表达式的语法分为元字符的语法和限定符的语法
  • 在JAVA中使用正则表达式需要先编译成Pattern对象,然后使用Matcher对象进行匹配
  • 正则表达式在JAVA中的应用非常广泛,可以用于各种字符串匹配、替换等操作
阅读剩余 48%

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JAVA中正则表达式小总结(整理) - Python技术站

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

相关文章

  • Java应用/JVM宕机排查步骤操作

    对于Java应用/JVM宕机排查步骤操作,我们需要进行以下的步骤: 1. 收集日志信息 Java应用程序和JVM宕机时通常会生成日志文件。首先,我们需要定位日志文件,并阅读日志文件,以了解宕机原因。常见的Java日志文件包括: Java虚拟机日志(JVM Log) Tomcat日志文件(catalina.out),如果我们的应用程序是部署在Tomcat容器中…

    Java 2023年5月25日
    00
  • 使用SpringSecurity处理CSRF攻击的方法步骤

    使用Spring Security处理CSRF攻击的步骤如下: 1. 开启CSRF保护 在Spring Security配置文件中,启用CSRF保护,代码如下: @Override protected void configure(HttpSecurity http) throws Exception { http.csrf().csrfTokenRepos…

    Java 2023年5月20日
    00
  • Spring运行时手动注入bean的方法实例

    下面进行详细的讲解。 1. 前言 Spring IOC容器可以通过XML配置文件或者注解的方式自动注入Bean,但是,在某些情况下,我们需要手动实现Bean的注入。本文将介绍如何在运行时手动注入Bean、向Spring IOC容器中添加Bean等操作。 2. 实现方法 2.1 通过ConfigurableListableBeanFactory接口实现 Spr…

    Java 2023年5月19日
    00
  • 面试题快慢链表和快慢指针

    快慢链表和快慢指针是算法中常见的一种技巧。它们在链表中查找中间节点、判断链表是否有环等情况下十分实用。下面就对快慢链表和快慢指针的使用进行详细讲解。 快慢指针 快慢指针的基本思想是将两个指针指向链表的头节点,快指针每次走两步,慢指针每次走一步,当快指针走到链表的末尾时,慢指针指向的就是链表的中间节点。 示例 1: 找到链表的中间节点 我们有一个链表,包含以下…

    Java 2023年5月19日
    00
  • SpringSecurity解决POST方式下CSRF问题

    SpringSecurity是Spring Framework的一个安全框架,它提供了完善的认证授权机制和攻击防护机制。其中,CSRF跨站请求伪造攻击是常见的一种攻击方式,SpringSecurity提供了一系列的解决方案来应对该问题。 以下是使用SpringSecurity解决POST方式下CSRF问题的完整攻略: 第一步:添加SpringSecurity…

    Java 2023年5月20日
    00
  • SPRING BOOT启动命令参数及源码详析

    SPRING BOOT启动命令参数及源码详析 Spring Boot是一个快速开发框架,它提供了许多方便的启动命令参数,可以满足不同的需求。本文将介绍和分析Spring Boot的启动命令参数和源码,帮助读者更加深入地理解Spring Boot的运行机制。 启动命令参数 通用参数 –debug:启用Debug模式,输出额外的调试信息。 –trace:启用…

    Java 2023年5月19日
    00
  • jQuery老黄历完整实现方法

    jQuery老黄历完整实现方法 简介 jQuery老黄历是一款对于时间的格式化呈现的插件,可以生成比较形象化的日期解释,比如”今天是个好日子,宜开发,宜部署”。 完整实现方法 要实现jQuery老黄历的功能,需要完成以下步骤: 步骤1:引入jQuery和老黄历脚本 首先,需要在HTML文件的<head>标签内引入jQuery和老黄历的脚本: &l…

    Java 2023年5月23日
    00
  • java常用Lambda表达式使用场景源码示例

    Java常用Lambda表达式使用场景源码示例 什么是Lambda表达式? Lambda表达式是Java 8引入的新特性之一,它是一个匿名函数,可以传递到函数式接口中使用。Lambda表达式提供了一个简单而强大的语法来处理集合数据,比传统的循环语句更加简洁易懂。 Lambda表达式的语法格式为:(parameters) -> expression 或 …

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