有一个需求:把某从mysql 里导出的的数据表 数据里的 Insert语句 转换成 update 语句.
需要把如下的语句:
insert into `table` (`ID`, `code`, `detail`) values('1','110000','XX市');
改成为:update table set detail = 'XX市' where code = '110000'
研究了好久。
下面是实现方法:
第一. 用sublime 打开数据文件 原数据文件
1. 图一: 原始数据。
2.用正则来匹配: ('1','110000','北京市'); 这里正则表达式为: ('\d+'),('\d+'),('\S+')
第二步,Ctrl + H 打开当前替换模式,用正则来匹配并替换。
第三,替换成功的结果。
第四,最后还有一点小尾巴,把 ); 替换成空白
把 ); 替换成 空白
如下图所示 :
其它
1. sublime 需要屏蔽掉某些不用的文件类型
- 只需要Preferences (中文首选项)里面找到setting-default(设置默认)
- 在设置面板里面找到 (没有则进行添加,注意上下的逗号)
"folder_exclude_patterns": [".svn", ".git", ".hg", "CVS", "node_modules", "bower_components"], //目录
"file_exclude_patterns": ["*.exe", "*.dll", "*.obj"], //文件
- 最后, Ctrl+S 保存即可
2. 查找时排除指定的文件夹或文件.
- 弹出查找窗口 Ctrl + Shift + F
这组快捷键可以调出 Sublime Text 的查找替换窗口,里边有一栏 Where,可以做一些高级设置:
- 进行查找, 如下图,表示要在 E:\PHPCMS\Cms\目录下查找包含each的以php 后缀的所有文件, 排除 blog目录,排除 js 文件
-
E:\PHPCms\ Cms\
表示在 E:\PHPCms\ Cms\ 目录下查找,可以有多个目录
-
*.php
表示找 php 后缀的文件,可以有多个后缀
-
-/*blog/*
表示排除 blog 文件目录里的所有文件
-
-*.js
表示排除 js 后缀的文件
-
注意,语句间以 逗号(,) 分隔.
至此,大功告成。哈哈,庆祝一下
最后修改: 2018-11-15
乐意黎原创, 严禁采集和转载