实际开发中,我们经常遇到"格式相同、内容类似"的重复修改需求。掌握批量处理能避免机械劳动,显著提升效率。
1. 多光标编辑(最常用)
当需要在多处同时输入相同内容时:
- Alt + 点击(VS Code/Sublime):在任意位置放置多个光标
- Ctrl + D(VS Code):选中当前单词,再次按 selects 下一个相同单词,同时编辑
- Ctrl + Shift + L(VS Code):选中所有匹配项
实战示例:将10个var改为let
// 原代码
var name = "A";
var age = 20;
var score = 90;
// 操作:选中第一个var,按Ctrl+D两次选中全部,直接输入let
2. 列选择模式
处理对齐的代码块(如JSON、CSV)时:
- Alt + 鼠标拖动:垂直选择多列
- Shift + Alt + 方向键:垂直扩展选择
场景:给20行数据统一添加引号或逗号
3. 正则替换批量重构
复杂模式用正则表达式一次性处理:
// 需求:将 userName, userAge 改为 getUserName, getUserAge
查找:\b(user\w+)\b
替换:get$1
// 结果:自动匹配所有以user开头的变量名并添加get前缀
4. 代码片段(Snippets)
对于重复的结构,预设模板:
// 在VS Code的snippets中定义
"Console Log Batch": {
"prefix": "clb",
"body": [
"console.log('$1:', $1);",
"console.log('$2:', $2);",
"console.log('$3:', $3);"
]
}
输入clb后按Tab,一次生成3行日志代码,只需填变量名。
5. 批量重命名变量
现代IDE的重命名符号功能(F2或右键Rename Symbol)比查找替换更安全——它只改变量引用,不改字符串中的同名文本。
6. 宏录制(重复性机械操作)
对于无法通过正则描述的复杂重复操作:
- VS Code: 安装 Macros 插件录制键盘操作序列
- Notepad++: 宏 → 开始录制 → 操作一次 → 停止 → 多次运行
注意事项:
- 批量修改前先保存/备份,防止误操作
- 正则替换前先在小范围测试,确认无误再全局替换
- 团队协作时,批量格式化代码要单独提交commit,与逻辑修改分开
小结: 批量处理的核心是找出规律,一次定义,批量执行。养成"先观察模式,再动手操作"的习惯,比盲目复制粘贴高效得多。