正規表達式詳解
-
- 一、定義
- 二、文法規則
- 三、java中的正則(轉義符\\)
-
- 1、第一種寫法
- 2、第二種寫法
- 四、JS中的正則(轉義符\)
-
- 1、第一種寫法
- 2、第二種寫法
一、定義
正規表達式是一種基于字元串的文法規則,是一種可以用于模式比對和替換的規則,主要用于文本和字元串的處理。它是一些特殊意義的字元組成的字元串,這些具有特殊意義的字元叫元字元。
二、文法規則
. 任何一個字元
\d 0-9的任何一個數字
\D 任何一個非數字字元
\s 空格類字元
\S 非空格類字元
\w 可用于辨別的字元(不含$)英文字母、數字、下劃線
\W 不能用于辨別的字元
\p{Lower} 小寫字母【a-z】
\p{Upper} 大寫字母【A-Z】
\p{ASCII} ASCII字元
\p{Alpha} 字母
\p{digit} 數字字元【0-9】
\p{Alnum} 字母或數字
\p{ Punct} 标點符号
\p{graph} 可視字元
\p{Print} 可列印字元
\p{Blank} 空格或制表符
\p{Cntrl} 控制字元
[ ] 中的元字元含義
[abcde] 比對a、b、c、d、e中的任意一個字元。
[a-h] 比對a-h中的任意一個字元。
[^abcde] 不與a、b、c、d、e中的任意一個字元比對。
交叉運算
[a-d[m-p]] 比對a-d、m-p中的任意一個字元(并集)。
[a-z&&[def]] 比對d、e、f中的任意一個字元(交集)。
[b-z&&[^def]] 不比對d、e、f中的任意一個字元(差集)。
限定符
X? 0次或1次 X{n,} 至少出現n次
X* 0次或多次 X{n,m} n次到m次
x+ 1次或多次 XY X後跟Y
X{n} x出現n次 X|Y X或Y
三、java中的正則(轉義符\)
1、第一種寫法
String str = “待驗證文本”;
String regular = “這裡是正規表達式”;
if (Pattern.compile(regular).matcher(str).matches()) {
System.out.println(“符合條件”);
} else {
System.out.println(“不符合條件”);
}
2、第二種寫法
String str = “待驗證文本”;
if (str.matches(“這裡是正規表達式”)) {
System.out.println(“符合條件”);
} else {
System.out.println(“不符合條件”);
}
四、JS中的正則(轉義符\)
1、第一種寫法
var str = “待驗證文本”;
var regular = new RegExp(/這裡是正規表達式/);
if (regular.test(str)) {
console.log(“符合條件”);
} else {
console.log(“不符合條件”);
}
2、第二種寫法
var str = “待驗證文本”;
if (/這裡是正規表達式/.test(str)) {
console.log(“符合條件”);
} else {
console.log(“不符合條件”);
}