1.能夠使用字符做爲一個通配符來代替除換行符(\n)以外的任意一個字符,例如: .at能夠與"cat","sat","mat"等匹配.一般,這種通配符用於操做系統中文件名匹配. 2.[a-z],任何含在[]中的內容都是一個字符,只匹配[]中的一個字符. 如:[a-zA-Z]表明任意大小寫字母. 3.[^a-z].匹配任何不屬於a-z中的字符. 4.[a-z&&[hij]].匹配hij任何一個(交集) 5.\s.匹配空字符(空格,tab,\n,換頁,回車) 6.\S.匹配非空字符(和[^\s]同樣) 7.\d.匹配數字,至關於[0-9] 8.\D.匹配非數字,至關於[^0-9],匹配中文,空格,換行符 9.\w.匹配詞字符,至關於[a-zA-Z0-9],不包含中文,不能表明空格,換行符 10.\W.匹配非詞字符,至關於[^\w],匹配一箇中文字 邏輯運算符: |:管道符.如:x|y表示x或y ():捕獲組.(abc)|(xyz)表示abc或xyz 邊界匹配符: ^:從頭匹配 $:從尾匹配 \b:詞界. \B.非詞界 量詞: 量詞描述一個模式吸取輸入文本的方式. *:前面字符或組匹配0或多個 +:前面字符或組匹配1或多個 ?:前面字符或組匹配0或1個 {n}:前面字符或組的數量爲n個 {n,}:前面字符或組的數量至少n個
{n,m}:前面字符或組數量至少n個,最多m個
在正則表達式中具備特殊含義的字符
特殊字符正則表達式 |
描述spa |
. | 表示任意一個字符 |
[abc] | 表示a、b或c中的任意一個字符 |
[^abc] | 除a、b和c之外的任意一個字符 |
[a-zA-z] | 介於a到z,或A到Z中的任意一個字符 |
\s | 空白符(空格、tab、換行、換頁、回車) |
\S | 非空白符 |
\d | 任意一個數字[0-9] |
\D | 任意一個非數字[^0-9] |
\w | 詞字符[a-zA-Z_0-9] |
\W | 非詞字符 |
表示字符出現次數的符號操作系統
表示次數的符號ci |
描述table |
* | 0 次或者屢次 |
+ | 1 次或者屢次 |
? | 0 次或者 1 次 |
{n} | 剛好 n 次 |
{n, m} | 至少 n 次,很少於 m 次 |