Notepad++正则表达式语法
2016-03-09 15:19
169 查看
\ 转义字符 如:要使用 “\” 本身, 则应该使用“\\”
\t Tab制表符 注:扩展和正则表达式都支持
\r 回车符CR 注:扩展支持,正则表达式不支持
\n 换行符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开始)注:看下文的示例
\d 匹配一个数字字符。等价于:[0-9]
\D \d取反,匹配一个非数字字符。等价于:[^0-9]
\s 匹配任意单个空白字符:包括空格、制表符等(注:不包括换车符和换行符)。等价于:[ \t]
\S \s取反的任意单个字符。
\w 匹配包括下划线的任意单个字符。等价于:[A-Za-z0-9_]
\W \w取反的任意单个字符。等价于:[^A-Za-z0-9_]
示例1
123abcfg
abc
abcd
替换成:
123hello
hello
hello
方法 -- 查找串:abc.*$ 替换串:hello
[b]示例2[/b]
123abcfg
abc
abcd
替换成:
123@abcfg@
@abc@
@abcd@
方法 -- 查找串:(abc.*)$ 替换串:@\1@
[b]示例3[/b]
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]
[b]示例4 [/b]删除所有空行
step1:a. 选择正则表达式 b. 查找串:^[ \t]*$ 替换串:空
step2:a. 选择扩展(\n,\r,\t,\0,\x...) b. 查找串:\r\n\r\n 替换串:\r\n 注:多次点击替换,直到没有可替换的字串
\t Tab制表符 注:扩展和正则表达式都支持
\r 回车符CR 注:扩展支持,正则表达式不支持
\n 换行符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开始)注:看下文的示例
\d 匹配一个数字字符。等价于:[0-9]
\D \d取反,匹配一个非数字字符。等价于:[^0-9]
\s 匹配任意单个空白字符:包括空格、制表符等(注:不包括换车符和换行符)。等价于:[ \t]
\S \s取反的任意单个字符。
\w 匹配包括下划线的任意单个字符。等价于:[A-Za-z0-9_]
\W \w取反的任意单个字符。等价于:[^A-Za-z0-9_]
示例1
123abcfg
abc
abcd
替换成:
123hello
hello
hello
方法 -- 查找串:abc.*$ 替换串:hello
[b]示例2[/b]
123abcfg
abc
abcd
替换成:
123@abcfg@
@abc@
@abcd@
方法 -- 查找串:(abc.*)$ 替换串:@\1@
[b]示例3[/b]
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]
[b]示例4 [/b]删除所有空行
step1:a. 选择正则表达式 b. 查找串:^[ \t]*$ 替换串:空
step2:a. 选择扩展(\n,\r,\t,\0,\x...) b. 查找串:\r\n\r\n 替换串:\r\n 注:多次点击替换,直到没有可替换的字串
相关文章推荐
- 分布式漏洞扫描
- enum 在c中的使用
- H3C防火墙F1000-C-G通过命令行配置,开启对设备的Web管理
- android 动态设置控件长度宽度
- 带图片二维码生成
- C# 字符串转换为计算公式
- Android仿微信小视频录制功能
- 欢迎使用CSDN-markdown编辑器
- tcp粘包分析
- C/C++中stack和string的介绍
- java读properties属性文件
- .Net Core CLI在CentOS7的安装及使用简介
- 介绍Java中的内存泄漏
- Android 补间动画使用记录
- Android实现数据存储技术
- 简单的猫叫老鼠跑人醒来的控制台逻辑
- 我的自定义闹钟
- 碎片的最佳实践——一个简易版的新闻应用
- 第2周项目 求fibonacci数列
- Crunching Cruncher xx.png failed, see logs