1.前言
工作中时常会通过notepad++对数据进行处理,这里记录一下本人在工作中用到的,持续补充吧!
2.正则表达式在notepad++中的使用
1.贪婪模式与非贪婪模式
目标串:abb
贪婪模式匹配串:a.* ---结果:abb
非贪婪模式匹配串:a.? ---结果:ab
2.分组
正则表达式会保存每个分组的真正匹配的内容,分组的编号从左到右依次计数,从1开始
目标串:让等号右边都加上一个序号1
正则表达式执行如下:(.)(=.*)
括号包括的内容就是分组。我们要引用分组的时候,用\1来引用第一个分组,用\2来引用第二个分组
3.工作中的例子
示例1:
我们经常遇到这样的场景,如从邮件中拷贝出一个流水号列表,我们需要在数据库中查询这些流水号信息,因为数据库查询,in后面的语句中,需要将这些文本添加引号,此时可以使用正则表示快速匹配替换。
执行正则匹配 (.*) '\1',
示例2:
有时业务人员会提供一些结构化的数据,而我们需要将这些数据插入到数据表中
因为这些数据的位置不一定与数据表的位置一一对应,所以需要生成insert语句
正则语句:(.*?)\t(.*?)\t(.*?)\t(.*?)\t
替换语句:insert into 'user_msg' \('id','name','age','gender'\) values\('\1','\2','\3','男'\);
注意:这个正则语句是同制表符(tab键)隔开的,如果是空格或者其他符号分割的自行改写即可
执行效果如下: