JAVA中正则表达式详解

发布于:2025-08-16 ⋅ 阅读:(12) ⋅ 点赞:(0)

本文正则表达式详解使用了代码详细讲解,让人一看就会.....

  1. 方法调用

    • String.matches(regex):检查字符串是否完全匹配正则表达式。

package com;

/**
 * 正则表达式测试类
 * 用于演示Java中正则表达式的基本用法
 */
public class RegexTest {
    public static void main(String[] args) {
        // =============== 内容限定 =================
        System.out.println("===============内容限定=================");
        
        // ==================== 单个字符限定 ===============================
        System.out.println("====================单个字符限定===============================");
        // 正则表达式:只匹配单个字符'a'
        String regex = "[a]";
        // 测试字符串
        String content = "a";
        // 判断字符串是否匹配正则表达式
        System.out.println(content.matches(regex));  // 输出:true
        
        // ==================== 范围字符限定 ===============================
        System.out.println("====================范围字符限定===============================");
        // 正则表达式:匹配任意一个字母(大小写)或数字
        String regex1 = "[a-zA-Z0-9]";
        // 测试字符串
        String content1 = "c";
        // 判断字符串是否匹配正则表达式
        System.out.println(content1.matches(regex1));  // 输出:true
        
        // ==================== 取反限定 ===============================
        System.out.println("====================取反限定===============================");
        // 正则表达式:匹配不是'a'或'b'的任意单个字符
        String regex2 = "[^ab]";
        // 测试字符串
        String content2 = "c";
        // 判断字符串是否匹配正则表达式
        System.out.println(content2.matches(regex2));  // 输出:true
        
        // =============== 长度限定 =================
        System.out.println("===============长度限定=================");
        
        // ==================== 固定长度限定 ===============================
        System.out.println("====================固定长度限定===============================");
        // 正则表达式:匹配恰好5个小写字母
        String regex3 = "[a-z]{5}";
        // 测试字符串
        String content3 = "abcde";
        // 判断字符串是否匹配正则表达式
        System.out.println(content3.matches(regex3));  // 输出:true
        
        // ==================== 范围长度限定 ===============================
        System.out.println("====================范围长度限定===============================");
        // 正则表达式:匹配2到4个小写字母
        String regex4 = "[a-z]{2,4}";
        /**
         * {0,2}  最小长度必须是0,最大长度是2
         * {2,}   最小长度是2,最大长度无限定
         */
        // 测试字符串
        String content4 = "cc";
        // 判断字符串是否匹配正则表达式
        System.out.println(content4.matches(regex4));  // 输出:true
        
        // =============== 长度限定符号 =================
        System.out.println("===============长度限定符号=================");
        /**
         * ?:零次或一次,等同于{0,1}
         * +:一次或多次,等同于{1,}
         * *:零次或多次,等同于{0,}
         */
        // 正则表达式:匹配一个或多个不是'a'或'b'的字符
        String regex5 = "[^ab]+";
        // 测试字符串
        String content5 = "ccxxzvzcvxv";
        // 判断字符串是否匹配正则表达式
        System.out.println(content5.matches(regex5));  // 输出:true
        
        // =============== 预定义字符 =================
        System.out.println("===============预定义字符=================");
        /**
         * 字符    描述
         * \d    匹配一个数字字符,等价于[0-9]。
         * \D    匹配一个非数字字符,等价于[^0-9]。
         * \n    匹配一个换行符。
         * \r    匹配一个回车符。
         * \s    匹配任何空白字符,包括空格、制表符、换页符等等。
         * \S    匹配任何非空白字符。
         * \t    匹配一个制表符。
         * \w    匹配包括下划线的任何单词字符。等价于"[A-Za-z0-9_]"。
         * \W    匹配任何非单词字符。等价于"[^A-Za-z0-9_]"。
         */
        // 正则表达式:匹配一个或多个数字字符
        String regex6 = "\\d+";  // 注意:Java中需要使用双反斜杠转义
        // 测试字符串
        String content6 = "11231231";
        // 判断字符串是否匹配正则表达式
        System.out.println(content6.matches(regex6));  // 输出:true
    }
}

常用的正则表达式:

        


网站公告

今日签到

点亮在社区的每一天
去签到