本文正则表达式详解使用了代码详细讲解,让人一看就会.....
方法调用:
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
}
}
常用的正则表达式: