Java : 常用重點正則標記

煙花再美不及伱發表於2020-12-16

1. [單個]描述某一個字元

x : 表示由x(字元)所組成
\\ : 表示匹配一個 \
\t : 表示製表符
\n : 表示換行

2. [單個]描述一個範圍

[abc] : 表示範圍在abc中的字元, 即a,b,c 字母中的任意一個
[^abc] : 表示範圍不在abc中的字元, 即該字串不存在a,b,c 字母中的任意一個
[0-9] : " ‘0’ ~ ‘9’ ", 由數字組成
[a-zA-Z] : 表示大小寫字母通吃

3. 簡化表示式 (有\要轉義,即寫兩個\)

. :表示任意一個字元
\d : 等價於 [0-9] , " ‘0’ ~ ‘9’ ", 表示任意一位數字
\D : 等價於[^0-9] , 表示任意的一位非數字
\s : 表示是一位空格, 即可能是\t,\n,空格
\S : 表示不是一位空格
\w : 等價於 [a-zA-Z0-9_], 表示字母, 數字, 下劃線所組成
\W : 等價於 [^a-zA-Z0-9_], 表示非字母, 數字, 下劃線所組成的

4. 邊界匹配(java可以不使用,但其他語言要使用,如 JavaScript)

^ : 表示正則的開始
$ : 表示正則的結束

5. 數量表達

在之前的所有的符號編寫幾次就能出現幾次, 如果要重複出現n次就需要數量表達

正則? : 表示出現 0 次或者 一次

正則+ : 表示出現 1 次或者 多次

正則* : 表示出現 null, 1次 或者 多次

{n} : 表示該匹配出現正好 n 次 (如身份證號 18 位, 手機號 11 位)

{n,} : 表示該匹配出現 n 次及 n次以上

{n,m} : 表示該匹配出現 n ~ m 次

6. 邏輯匹配

正則A正則B : 表示 與 的關係, 在第一個匹配之後立即匹配第二個

正則A|正則B : 表示 A 或 B 正則出現一次

(正則) : 按照一組正則進行處理

7. 案例測試

package com.cwq.beyond;

public class test {
	public static void main(String[] args) {
		System.out.println("1 = "+"a".matches("a"));  //true
		System.out.println("2 = "+"aa".matches("a"));  // false
		System.out.println("3 = "+"aa".matches("aa")); // true
		System.out.println("4 = "+"\\".matches("\\\\"));  //  兩個\\ 相當於一個 \
		System.out.println("5 = "+"abc".matches("[abc]"));  //false
		System.out.println("6 = "+"a".matches("[abc]")); // true
		System.out.println("7 = "+"ab".matches("[abc]")); // false
		System.out.println("8 = "+"ab".matches("[^abc]")); // false
		System.out.println("9 = "+"a".matches("[^abc]")); // false
		System.out.println("10= "+"d".matches("[^abc]")); // true
		System.out.println("11= "+"d3".matches("[^abc]")); // false
		System.out.println("12= "+"9".matches("[0-9]")); // true
		System.out.println("13= "+"3".matches("[3-9]")); // true
		System.out.println("13= "+"12".matches("[3-9]")); // false
		System.out.println("14= "+"a".matches("[a-z]")); // true
		System.out.println("15= "+"a".matches("[a-zA-Z]")); // true
		System.out.println("16= "+"a".matches(".")); // true
		System.out.println("17= "+".".matches(".")); // true
		System.out.println("18= "+".".matches("\\.")); // true
		System.out.println("19= "+"9".matches("\\d")); // true
		System.out.println("20= "+"19".matches("\\d")); // false
		System.out.println("21= "+" ".matches("\\s")); // true
		System.out.println("22= "+"a".matches("\\s")); // false
		System.out.println("23= "+"a".matches("\\w")); // true
		System.out.println("24= "+"9".matches("\\w")); // true
		System.out.println("25= "+".".matches("\\W")); // true
		System.out.println("26= "+"9".matches("\\w?")); // true
		System.out.println("27= "+"".matches("\\w?")); // true
		System.out.println("28= "+"a".matches("\\w+")); // true
		System.out.println("28= "+"aaa23fd".matches("\\w+")); // true
		System.out.println("29= "+"".matches("\\w+")); // false
		System.out.println("30= "+"".matches("\\w*")); // true
		System.out.println("31= "+"QWEsdf".matches("\\w*")); // true
		System.out.println("32= "+"111111".matches("\\d{6}")); // true
		System.out.println("33= "+"111111".matches("\\d{6,}")); // true
		System.out.println("34= "+"11111111".matches("\\d{6,}")); // true
		System.out.println("35= "+"11111111".matches("\\d{6,9}")); // true
 		
		
		
	}
}

在這裡插入圖片描述

相關文章