Sublime Text 无内置转置单词顺序功能,推荐使用 swap_word 插件:安装后将光标置于两词间任意位置,按 Ctrl+Shift+W(Win/Linux)或 Cmd+Shift+W(macOS)即可交换,精准识别空白分隔单词,不误拆 user_name 等复合词。

Sublime Text 里没有内置的“转置单词顺序”功能
它不支持像 Vim 的 dwP 或 Emacs 的 transpose-words 那样一键反转相邻单词顺序。所谓“交换前后单词位置”,本质是选中两个单词、剪切再粘贴调换——但手动操作容易错位、漏空格,尤其在标点紧邻时。
用 swap_word 插件最稳当
社区维护的 swap_word 是目前唯一可靠实现“光标所在处前后两个单词互换”的方案,不依赖正则手写,也不误伤下划线变量名或连字符词。
- 安装:通过 Package Control 搜索并安装
swap_word - 使用:把光标放在两个单词之间的任意位置(比如
hello world中的空格上,或任一单词内部),按ctrl+shift+w(Windows/Linux)或cmd+shift+w(macOS) - 注意:它默认只交换「由空白分隔」的单词;
user_name、HTTPResponse这类会被视为一个词,不会拆开 - 如果触发后没反应,检查是否被其他插件快捷键覆盖——可在
Preferences → Key Bindings里搜swap_word确认绑定
不用插件?靠多行编辑 + 剪切粘贴硬刚
适用于临时一两次操作,且你清楚当前单词边界在哪。适合处理干净的空格分隔场景,比如日志字段重排或简单参数调整。
- 把光标分别放到前一个单词末尾和后一个单词末尾,按
ctrl+alt+↑/↓(Windows/Linux)或ctrl+cmd+↑/↓(macOS)添加多行光标 - 按
shift+←各自选中单词(注意别多选空格) - 按
ctrl+x剪切,此时 Sublime 会把两个选区内容分别存入剪贴板栈 - 把光标移到原前词位置,
ctrl+v粘贴——它会自动把后词贴进来;再移到原后词位置,再ctrl+v,前词就落位了 - 风险点:如果单词间有多个空格、制表符或换行,多光标选区极易错位,粘贴后格式全乱
别碰正则替换做单词交换
网上有些教程教用 Find: (\w+)\s+(\w+) + Replace: ,看着快,实际埋雷:
- 匹配不到带引号的字符串,比如
"first" "second" - 会错误匹配函数调用中的参数:
func(a, b)→ 变成func(b, a),语义全毁 -
\w不包含中文、emoji、连字符,遇到姓名 张三或state-id直接失效 - 一次替换可能跨多行,若文档里有类似结构的注释或配置项,一替全崩
真正要批量改结构化文本(如 CSV 字段顺序),该用 Python 脚本或专用工具,不是靠编辑器正则硬扛。
插件能跑起来就别自己拼逻辑;多行编辑看着灵活,实操五步里三步在调光标;而正则那条路,多数人调试十分钟,不如装个插件花三十秒。











