登录
推荐 文章 Go 技术 课程 下载 专题 AI
首页 >  文章 >  软件教程

VS Code 多光标编辑怎么只选中相同词的部分匹配

来源:17golang原创

时间:2026-09-09 07:33:57 350浏览 收藏

在 VS Code 里,想把重复出现的同一个词改掉几处,关键不是使用“全选所有匹配”,而是从当前词开始用 ⌘D 逐次增加选区。遇到不想修改的下一处,就按 ⌘K ⌘D 跳过它,再继续选择后面的匹配。这样既能保留未选中的原词,也能把多光标编辑控制在明确范围内。

要点速览
  • ⌘D:选择当前词,再逐次加入下一个匹配。
  • ⌘K ⌘D:跳过当前不想修改的下一处匹配。
  • ⇧⌘L:一次选中全部匹配,本题只需要局部修改时不要误用。

本文以 macOS 快捷键为例,Windows 使用 Ctrl+DCtrl+K Ctrl+DCtrl+Shift+L,Linux 使用 Ctrl+DCtrl+K Ctrl+DCtrl+Shift+L。如果你只想选中“部分匹配项”,下面的第三步正是关键。

目的macOSWindows / Linux结果
逐个添加匹配⌘DCtrl+D当前词与下一个匹配加入选区
跳过下一处⌘K ⌘DCtrl+K Ctrl+D不选中当前遇到的下一处
全部选中⇧⌘LCtrl+Shift+L所有匹配同时进入多光标

步骤一:打开文件并定位目标词

先准备一个包含重复文本的文件,例如在编辑器中放入三处独立的 timeout,并额外放一处 timeoutMs。通过菜单路径 Explorer > OPEN EDITORS > 打开的文件进入编辑区,把鼠标放到第一处完整的 timeout 中。

这里要先分清“相同词”和“词的一部分”:光标放在 timeout 内时,VS Code 会以当前词为选择对象;timeoutMs 是更长的标识符,不应把它当作本次局部编辑的目标。确认编辑器只突出当前词后再继续。

VS Code 风格编辑器中打开 settings.js,光标位于完整 timeout 词内,Explorer 显示当前文件
图1:在编辑器中把光标放进完整的 timeout 词内,先确认待编辑的词边界。

步骤二:用 ⌘D 逐次加入需要修改的匹配

操作路径是编辑器目标词 > 按一次 ⌘D > 再按 ⌘D。第一次会选中光标所在的 timeout,第二次把下一个相同词加入选区;每多按一次,就会继续加入后续匹配。不要拖动鼠标去拼接选区,否则容易把空格或标点也带进去。

例如三处 timeout 中只需要改前两处,就在出现两个选区时停下。可见的验收条件是:两个词同时高亮,编辑器中出现两个插入光标,未处理的第三处仍是普通文本。

步骤三:遇到不想修改的匹配时用 ⌘K ⌘D 跳过

如果目标顺序是“第一处要改、第二处保留、第三处要改”,在第一处按 ⌘D 后,不要再次直接按 ⌘D。改走路径编辑器当前选区 > ⌘K ⌘D 跳过下一处 > ⌘D 加入后续匹配

此时第二处会保持未选中,第三处加入多光标。看到状态栏显示两个选区,且中间那处 timeout 没有高亮,就说明范围控制成功。⇧⌘L 的作用是把所有当前匹配一次加入,不适合这个场景;误按后可以按 Escape 清掉多光标,再从第一处重新开始。

VS Code 风格编辑器显示两个 timeout 被多光标高亮,另一个 timeout 保持未选中,状态栏显示 2 selections
图2:两个目标 timeout 同时高亮,未选中的第三处仍保持普通文本状态。

步骤四:输入新值并核对局部替换结果

确认选区数量和位置后,直接输入 deadline,两个光标会同时插入新值。然后按 Escape 退出多光标模式,再按 ⌘S 保存。操作路径是多选文本 > 输入 deadline > Escape > File > Save

最终验收不要只看高亮是否消失,而要看三个事实:两处目标词已经变成 deadline;被跳过的 timeout 仍然存在;文件标签页的未保存圆点消失。若三处都变了,通常是把 ⇧⌘L 当成了逐次选择,或者在第三步没有跳过中间匹配。

VS Code 风格编辑器中两处 timeout 已改为 deadline,未选中的 timeout 保留,标签页显示已保存状态
图3:选中的两处已变为 deadline,未选中的 timeout 保留,文件处于已保存状态。

常见问题

按 ⌘D 后为什么选中了我不想改的下一处?

⌘D 的行为就是继续选择下一个匹配。遇到不需要的项时,应先按 ⌘K ⌘D 跳过,再按 ⌘D 选择后续项;已经选错时按 Escape 重置最稳妥。

怎样只改同名词,不误改 timeoutMs?

先把光标放在完整词内,并观察 VS Code 的词边界高亮。若要处理更复杂的字符串片段,可改用 Find 面板的 Match Case、Match Whole Word 或 Regular Expression 选项,先确认匹配范围再编辑。

⌘D 没有添加光标怎么办?

检查当前焦点是否在编辑器,而不是 Explorer 或输入框;也可以打开 Command Palette 搜索“Add Selection To Next Find Match”,在 Keyboard Shortcuts 中查看该命令是否被改绑。

多光标局部修改的判断标准很简单:选区数量等于计划修改的数量,未选中的原词保留,保存后文件状态正常。把逐次加入、跳过匹配和全部选中三个命令区分开,重复文本较多时也能保持可控。

声明:本文转载于:17golang原创 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>