正則表達式描述字串匹配模式,可用於驗證、替換、擷取子串。由一般字元與元字元組成,廣泛應用於 *nix、PHP、Java、C# 等環境。
^ 字串開頭(多行模式下匹配行首)$ 字串結尾(多行模式下匹配行尾)\b 單字邊界,\B 非單字邊界| 符號 | 說明 | 等價 |
|---|---|---|
* | 0 次或多次 | {0,} |
+ | 1 次或多次 | {1,} |
? | 0 次或 1 次 | {0,1} |
{n} | 確切 n 次 | — |
{n,} | 至少 n 次 | — |
{n,m} | n 到 m 次 | — |
在限定符後加 ? 切換為非貪婪模式(如 *?、+?)。
[a-z] 範圍,[^a-z] 排除\d 數字 [0-9],\D 非數字\w 單字字元 [A-Za-z0-9_],\W 非單字\s 空白字元,\S 非空白[[:alpha:]]、[[:digit:]]、[[:space:]] 等(pattern) 捕獲分組,(?:pattern) 非捕獲(?=pattern) 正向前瞻,(?!pattern) 負向前瞻| 選擇分支\n 反向引用(n 為分組編號)/^[\w.-]+@[\w-]+(\.\w+)+$//(\w+):\/\/([^/:]+)(:\d*)?([^# ]*)//^(?:Chapter|Section) [1-9][0-9]{0,1}$//\b(\w+)\s+\1\b/gi\ 轉義() (?:) (?=) [] 括號* + ? {n} {n,} {n,m} 限定符^ $ \元字元 定位與順序| 選擇