Notepad++无自动多光标功能,但可通过列编辑(Alt+拖拽/Alt+Shift+方向键,需确保状态栏为INS)、正则替换(Ctrl+H,勾选正则,^行首/$行尾)和全部查找(Ctrl+F→全部选中→直接输入)实现等效多行同步编辑。

Notepad++ 本身不提供“自动多光标”(如 VS Code 的 Ctrl+D 连续选中)功能,但通过列编辑、查找替换和书签三种机制,能稳定实现等效的多行同时编辑效果。关键不是追求光标数量,而是确保修改动作同步作用于目标位置。
怎么开启并正确使用列编辑(Alt+鼠标拖拽无效?)
列编辑是 Notepad++ 实现多行同步输入/删除最直接的方式,但默认行为容易误判为“没反应”:
- 必须先确认状态栏显示
INS(插入模式),不是OVR(覆盖模式);按键盘上的Insert键切换 - 按住
Alt键后,再用鼠标左键从第一行目标列拖到最后一行对应列——松手后光标会出现在每行该列位置 - 此时输入内容,会在每行相同列插入(非覆盖),删除则只删选中区域内的字符
- 若想在多行开头统一加
//,建议把光标放在第1行首,Alt+Shift+↓向下扩展至末行,再输入//
如何给每行开头或结尾批量加内容(不用手动拖)
正则替换比列编辑更鲁棒,尤其适合首尾操作,且不受光标起始位置影响:
- 快捷键
Ctrl+H打开替换框 - 勾选
正则表达式(务必勾选,否则^和$不生效) - 行首添加:查找目标填
^,替换为填//(注意空格)→ 点全部替换 - 行尾添加:查找目标填
$,替换为填//→ 全部替换 - 若要添加含正则元字符的内容(如
(、{、.),需用反斜杠转义:\(、\{、\.
怎样快速选中所有匹配词并一起改(类似 Ctrl+D 效果)
Notepad++ 没有逐个添加光标的交互逻辑,但“全部选中+直接输入”可达成完全一致的结果:
- 按
Ctrl+F,输入目标词(如user_id) - 勾选
全部选中→ 点击全部查找,所有匹配项高亮并被选中 - 关闭查找框,直接输入新内容(如
uid),所有选中位置同步更新 - 若目标词含正则特殊字符(如
api.v1+),勾选正则表达式并对+写成\+,否则会漏匹配 - 这个方法比 Ctrl+Click 更可靠——后者依赖“启用多点编辑”设置,且 Windows/macOS 行为不一致
为什么 Alt+Shift+方向键有时只选中一列?
这是新手最常卡住的点:列编辑选区必须“垂直对齐”,而 Notepad++ 对起始列非常敏感:
-
Alt+Shift+↓是从当前光标位置向下延伸列选区,不是从行首开始 - 如果光标在第1行第5列,按
Alt+Shift+↓到第10行,实际选中的是每行的第5列(哪怕第3行只有4个字符,也会在第5列插入空格) - 想严格对齐行首?先把光标移到第1行开头(
Home键),再Alt+Shift+↓ - 想对齐行尾?先按
End到第1行末,再Alt+Shift+↓——但注意,不同行长会导致选区底部参差,此时更适合用$正则替换
真正难的不是操作步骤,而是判断该用哪种方式:列编辑适合已知精确列位置的硬对齐;正则替换适合语义化位置(行首/行尾/单词边界);全部查找适合内容驱动的批量改写。混用这三者,才能避开“明明按了Alt却没反应”这类低级陷阱。

















