二話不說,我們直接進入正題,首先分享兩個比較好的網站:
圖形化顯示Regulex:點擊跳轉
正則表達式的在線測試:點擊跳轉
常用的正則表達語言
常用符號 | 用法 |
---|---|
^ | 匹配輸入字符串的開始位置 |
$ | 匹配輸入字符串的結尾位置 |
* | 匹配前面的子表達式零次或多次 |
? | 匹配前面的子表達式零次或一次,或指明一個非貪婪限定符 |
+ | 匹配前面的子表達式一次或多次 |
{n} | n是一個非負整數。匹配確定的n次 |
{n,} | n是一個非負整數。至少匹配n次 |
{n,m} | 最少匹配n次且最多匹配m次 |
| | 指明兩項之間的一個選擇。要匹配|,請使用| |
[] | 方括號把一列字符或一個范圍括在了一起 (或兩者) |
[^] | 匹配不在類中的任何一個字符 |
[a-z] | 字母a-z |
. | 任意字符 |
\s | 匹配任意單個空白字符 , 主要是空格 |
\S | 匹配任何非空白字符 |
\w | 匹配任何單個字符,與[A-Za-z0-9_]功能一樣 |
\W | 用于匹配所有與\w不匹配的字符 |
[\u4E00-\u9FA5] | 匹配所有中文 |
() | 1.確定求值的順序</br>2.捕獲子模式 |
\d | 匹配任意一個數字 (相當于類 [0-9]) |
在使用過程中主要注意下面幾個要點
- 非貪婪模式:默認情況下都是貪婪模式,使用?轉換成非貪婪模式
- 部分內容需要轉移:[] 內的特殊字符(如*)需要轉移