在平時調試過程中,有時候需要打印很多高頻log,通過正則表達式可以很輕易的匹配出需要的信息。
常用語法:
| [ABC] | 匹配 [...] 中的所有字符 |
| [^ABC] | 匹配除了 [...] 中字符的所有字符 |
| [A-Z] | [A-Z] 表示一個區間,匹配所有大寫字母,[a-z] 表示所有小寫字母 |
| . | 匹配除換行符(\n、\r)之外的任何單個字符,相等於 [^\n\r] |
| [\s\S] | 匹配所有。\s 是匹配所有空白符,包括換行,\S 非空白符,包括換行 |
| \w | 匹配字母、數字、下划線。等價於 [A-Za-z0-9_] |
| \n | 匹配一個換行符。等價於 \x0a 和 \cJ |
| \r | 匹配一個回車符。等價於 \x0d 和 \cM |
| \ | 轉義 |
| $ | 匹配前面的子表達式零次或多次。要匹配 * 字符,請使用 \* |
| + | 匹配前面的子表達式一次或多次。要匹配 + 字符,請使用 \+ |
| ^ | 匹配輸入字符串的開始位置,除非在方括號表達式中使用,當該符號在方括號表達式中使用時,表示不接受該方括號表達式中的字符集合 |
| ? | 匹配前面的子表達式零次或一次 |
| * | 匹配前面的子表達式零次或多次 |
舉例:
匹配以error開頭的整行字符串
^error.*$
匹配以error結尾的整行字符串
^.*error$
如下匹配任意含error的整行
^.*error.*$
