(4)使用方括号表达式
表示枚举
表示范围:-
表示求否:^
表示“与”运算:&&
表示“并”运算
import java.util.regex.*;
import java.util.*;
import java.util.function.*;
import java.util.stream.*;
public class Test
{
public static void main(String[] args) throws Exception
{
//正则表达式的方括号表达式
//表示枚举
Pattern p = Pattern.compile("[abc]");
Matcher m = p.matcher("a");
System.out.println(m.matches());
System.out.println(Pattern.matches("[gz]", "z"));
//表示范围 -
System.out.println(Pattern.matches("[a-f]","a"));
System.out.println(Pattern.matches("[\\u0041-\\u0056]","\u0045"));
System.out.println("\u4E01");
//范围和枚举结合
System.out.println(Pattern.matches("[a-cx-z]","y"));
//表示求否
System.out.println(Pattern.matches("[^abc]","y"));
System.out.println(Pattern.matches("[^abc]","a"));
System.out.println(Pattern.matches("[^a-f]","b"));
//表示与运算:&&
System.out.println(Pattern.matches("[a-z&&[def]]","d"));
System.out.println(Pattern.matches("[a-z&&[def]]","a"));
System.out.println(Pattern.matches("[a-z&&[^bc]]","a"));
System.out.println(Pattern.matches("[a-z&&[^bc]]","b"));
System.out.println(Pattern.matches("[a-z&&[^m-p]]","a"));
System.out.println(Pattern.matches("[a-z]&&[^m-p]]","m"));
//表示并运算
System.out.println(Pattern.matches("[a-d[m-p]]","m"));
System.out.println(Pattern.matches("[a-d[m-p]]","a"));
}
}