notepad++ 正則表示式
注意:Notepad++正則表示式字串最長不能超過69個字元
\ 轉義字元 如:要使用 “\” 本身, 則應該使用“\”
\t Tab製表符 注:擴充套件和正則表示式都支援
\r 回車符CR 注:擴充套件支援,正則表示式不支援
\n 換行符LF 注:擴充套件支援,正則表示式不支援
\r*\n* 正則表示式可表示回車換行
. 匹配任意一個字元
^ 其右邊的表示式被匹配在行首。如:^A匹配以“A”開頭的行
$ 其左邊的表示式被匹配在行尾。如:e$匹配以“e”結尾的行
| 或運算子,匹配表示式左邊和右邊的字串。如:ab|bc匹配“ab”或“bc”
[] 匹配列表中任意單個字元。如:[ab]匹配“a”或“b”;[0-9]匹配任意單個數字
[^] 匹配列表之外的任意單個字元。如:[ab]匹配“a”和“b”以外的單個字元;[0-9]匹配任意單個非數字字元
* 其左邊的字元被匹配任意次(0次或多次)。如:be*匹配“b”,“be”或“bee”
+ 其左邊的字元被匹配至少一次(1次或多次)。如:be+匹配“be”或“bee”,但不匹配“b”
? 其左邊的字元被匹配0次或者1次。如:be?匹配“b”或“be”,但不匹配“bee”;\r?\n匹配行結尾符
() 影響表示式匹配的順序(類似C++的小括號會影響表示式運算順序),並且用作表示式的分組標記(標記從1開始)如:([a-z]bc)smn\1匹配“tbcsmntbc”;另見:看下文的示例
{}
\d 匹配一個數字字元。等價於:[0-9]
\D \d取反,匹配一個非數字字元。等價於:[^0-9]
\s 匹配任意單個空白字元:包括空格、製表符等(注:不包括換車符和換行符)。等價於:[ \t]
\S \s取反的任意單個字元。
\w 匹配包括下劃線的任意單個字元。等價於:[A-Za-z0-9_]
\W \w取反的任意單個字元。等價於:[^A-Za-z0-9_]
\b 匹配單詞起始處或結尾處 如:\bin匹配int,但不匹配sing
示例1
123abcfg
abc
abcd
替換成:
123hello hello hello
方法 -- 查詢串:abc.*$ 替換串:hello
示例2
123abcfg
abc
abcd
替換成:
123@abcfg@
@abc@
@abcd@
方法 -- 查詢串:(abc.*)$ 替換串:@\1@
示例3
str[1]abc[991]
str[2]abc[992]
str[11]abc[993]
str[222]abc[996]
替換成
god[991]
god[992]
god[993]
god[996]
方法1 -- 查詢串:str[[0-9]+]abc[([0-9]+)] 替換串:god[\1]
方法2 -- 查詢串:str[([0-9]+)]abc[([0-9]+)] 替換串:god[\2]
示例4 刪除所有空行
step1:a. 選擇正則表示式 b. 查詢串:^[ \t]*$
替換串:空
step2:a. 選擇擴充套件(\n,\r,\t,\0,\x...) b. 查詢串:\r\n\r\n 替換串:\r\n 注:多次點選替換,直到沒有可替換的字串
示例5
start="120"
start="720"
替換成
start=""
start=""
方法 -- 查詢串:start="[0-9]{2,3}" 替換串:start=""
查詢跨行的兩行,換行的地方可用\r\n
表示
示例6
"id": "3",
"品牌": "華為",
"手機名稱": "華為A668",
"釋出會時間": "2001-3-3",
"上市日期": "2001-3-3",
"手機型別": "小靈通",
"機身材質": "",
"機身顏色": "",
替換成
"id": "3",
"品牌": "華為",
"手機名稱": "華為A668",
"釋出會時間": {"$date":"2001-3-3"},
"上市日期": {"$date":"2001-3-3"},
"手機型別": "小靈通",
"機身材質": "",
"機身顏色": "",
方法 -- 查詢串:("\d\d\d\d-\d+-\d+") 替換串:{"$date":\1}
解:
字串:amidb
查詢目標:a 和 b
方法:(a)mid(b)
\1 就代表 a
\2 就代表 b
自己可以繼續完善~~~