注意:Notepad++正则表达式字符串最长不能超过69个字符
转义字符 如:要使用 “” 本身, 则应该使用“\”
Tab制表符 注:扩展和正则表达式都支持
回车符CR 注:扩展支持,正则表达式不支持
换行符LF 注:扩展支持,正则表达式不支持
. 匹配任意一个字符
^ 其右边的表达式被匹配在行首。如:^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”; ? 匹配行结尾符
() 影响表达式匹配的顺序(类似C++的小括号会影响表达式运算顺序),并且用作表达式的分组标记(标记从1开始)如:([a-z]bc)smn1匹配“tbcsmntbc”;另见:看下文的示例
{} 指定前面的字符或分组的出现次数 如:abc{3}匹配abccc;a(bc){2}匹配abcbc
d 匹配一个数字字符。等价于:[0-9]
D d取反,匹配一个非数字字符。等价于:[^0-9]
s 匹配任意单个空白字符:包括空格、制表符等(注:不包括换车符和换行符)。等价于:[ ]
S s取反的任意单个字符。
w 匹配包括下划线的任意单个字符。等价于:[A-Za-z0-9_]
W w取反的任意单个字符。等价于:[^A-Za-z0-9_]
匹配单词起始处或结尾处 如:in匹配int,但不匹配sing
常用例子:
^#.* #开头的整行
^#.*$ ? #开头的整行(包含换行符)
^.*luci.* 包含luci的行
^.*luci.*$ ? 包含luci的行(包含换行符)
^((?!luci).)*$ 不含luci的整行
^((?!luci).)*$ ? 不含luci的整行(包含换行符)