Sublime Text中最快合并多行是Ctrl+J(Win/Linux)或Cmd+J(macOS),将换行转为空格并去首尾空;精准逗号分隔推荐正则替换\n为“, ”;含特殊字符时用列编辑手动添加逗号;高频使用可自定义join_with_comma命令绑定Ctrl+Alt+J。

用 Ctrl+J 快速合并多行(Windows/Linux)或 Cmd+J(macOS)
Sublime Text 内置的 join_lines 命令就是干这个的:选中多行后按快捷键,所有换行符被替换成单个空格,并删除首尾空白。这不是你想要的逗号分隔,但它是最快的基础合并操作——适合后续手动补逗号或配合正则进一步处理。
注意:Ctrl+J 会把连续空行也压成一个空格,如果原始数据里有空行或缩进不一致,结果会出现多余空格。建议先用 Ctrl+Shift+P → Remove Empty Lines 清理,再执行合并。
用正则替换实现「换行→逗号」精准转换
这是最可控的方式,尤其适合结构化文本(如复制的列表、CSV 片段)。打开替换面板(Ctrl+H / Cmd+H),勾选 .* 按钮启用正则模式:
- 查找内容填:
\n - 替换为:
,(注意逗号后带一个空格,更易读) - 点击
Replace All
⚠️ 风险点:如果最后一行末尾也有换行符,结尾会多出一个 , 。解决办法是替换前先确保光标不在文件末尾空行,或替换后用 Ctrl+Shift+P → Trim Trailing White Space 清理。
用列编辑 + 剪贴板技巧处理「带引号/特殊字符」的字段
当每行是类似 "apple"、"banana, ripe" 这种含逗号或引号的字段时,直接替换 \n 会破坏数据。此时应避免全局替换,改用列编辑辅助:
- 按住
Alt(Windows/Linux)或Cmd+Shift(macOS),鼠标拖选所有行末尾(即每个换行符前的位置) - 松开后所有行末都处于可编辑状态,直接输入
, - 最后手动删掉最后一行末尾多余的
,
这个方法绕过了正则解析逻辑,完全由你控制插入位置,对含特殊字符的字段最安全。
保存为自定义命令一键执行(适合高频使用)
如果你每周都要整理几十次这类数据,可以写一个简单插件,把「替换换行为逗号」封装成快捷键。在 Tools → Developer → New Plugin… 中粘贴以下内容并保存为 join_with_comma.py:
import sublime import sublime_pluginclass JoinWithCommaCommand(sublime_plugin.TextCommand): def run(self, edit): for region in self.view.sel(): if region.empty(): continue text = self.view.substr(region)
替换所有换行符为 ", ",去掉开头结尾空格
joined = ", ".join(line.strip() for line in text.splitlines()) self.view.replace(edit, region, joined)然后在用户按键绑定里加一行:
{"keys": ["ctrl+alt+j"], "command": "join_with_comma"}。之后只要选中文本,按Ctrl+Alt+J就能一步到位,且自动strip()每行,不残留空格。真正容易被忽略的是:这个命令只作用于当前选区;如果不选中任何内容,它不会报错,但也不会做任何事——得先手动框选,这点和
Ctrl+J的默认全文件行为不同。










