Notepad++正则表达式中几点需要注意的地方
2016-05-22 03:43
316 查看
正则匹配要尽可能简单,所谓简单,就是非必要部分要尽可能短。
需要保留的位置表达式要细细地写,并且最后用括号括起来,以供替换选择。
特别是需要保留的位置的两边缘标志一定要写清楚了。
Notepad++中
“()”分别表示标记域的开始符的结束符,而在python中“()”表示的是需要借助它进行匹配,但是不作为匹配结果的部分。
[…]:字符集(character set), 例如, [abc] 代表字符 a, b or c。也可以使用范围, 如 [a-z] 代表所有小写字母。
[^…]非字符集中的字符. 例如, [^A-Za-z] 代表处理大小写字母以外的字符。
python中
需要保留的位置表达式要细细地写,并且最后用括号括起来,以供替换选择。
特别是需要保留的位置的两边缘标志一定要写清楚了。
Notepad++中
“()”分别表示标记域的开始符的结束符,而在python中“()”表示的是需要借助它进行匹配,但是不作为匹配结果的部分。
\n,n可以是1到9 代表正在替换的第一到第九的标记域。
[…]:字符集(character set), 例如, [abc] 代表字符 a, b or c。也可以使用范围, 如 [a-z] 代表所有小写字母。
[^…]非字符集中的字符. 例如, [^A-Za-z] 代表处理大小写字母以外的字符。
^为行开始符
$为行尾符。
*匹配0次或多次
+匹配1次或多次。
python中
(?<=某某某)abc放前面,表示python中表示只匹配前面是某某某的
abc,匹配到的是
abc,
(?=)放后面,意思类似上面。
.*?非贪婪匹配,当有多种可匹配选择时,选短的一个。
虽然不同的地方都会用到正则表达式,规则大同小异。
相关文章推荐
- python sorted
- 303. Range Sum Query - Immutable
- notepad++正则匹配及匹配内容的保留与处理
- 浅谈多线程中GCD(有图有真相) iOS中如何实现多线程同步
- 框架 day33 Hibernate,组件映射,继承映射,抓取(检索)策略-优化,检索方式总结
- 实战SSH端口转发
- equal_range用法
- [leetcode] 【数组】27. Remove Element
- 明明将gson-2.3.1.jar 包复制粘贴在所在工程libs目录下,却无法使用
- 将项目改为MRC的方法(有图有真相)
- Window7下安装openssl完整版(亲测实现)
- kubernates
- Minimum Path Sum
- 大数据学习笔记·城市计算(3)
- [leetcode] 【数组】18. 4Sum
- 自定义控件
- 关于js传送json到.net后台处理
- grunt的安装使用
- 微信开发获取code
- tracker-store and tracker-miner-fs eating up my CPU on every startup