使用方法
删除空行把乱糟糟的空行一次清掉,只要四步:
- 在「输入文本」框粘贴或输入内容,里面夹多少空行都行,如演示的 7 行夹 3 空行。
- 勾选项:「删除完全空行」「删除仅含空格/制表的行」默认开;要不要「连续空行压成一个」按需勾。
- 点「删除空行」,或在文本框按 Ctrl/Cmd + Enter。结果进下方文本框,并显示处理前后行数。
- 点「复制结果」整段拿走;想还原示例按「载入示例」。
删除空行能解决什么
它把「从网页/表格复制来的一堆空行」压成干净文本,适合三类场景:
- 整理网页复制:从网页粘一段文字,段间常带三四个空行,清掉后直接进笔记或编辑器,排版清爽。
- 表格与报表:导出的 CSV/文本里偶有整行空行,删掉避免后续按行解析时错位或统计多算空记录。
- 代码与日志:日志段间空行、代码里误敲的空行,清理后更易读;配合「压成一个」还能保留段落感。
本页不做的事:不删行内首尾空格(那是去空格工具的事);不删含文字但很短的行;不做按关键词过滤行。只针对「空」与「假空」行,不动有内容的行。
原理和变量
① 用了哪个具体函数:核心是 text.split(/\r?\n/) 按换行切分成行数组,再 filter 掉空行,最后 join('\n') 拼回。判空用 line.trim() === '',这样「只含空格/制表」的行也会被识别为空白。
② 关键参数为什么这样取:用 trim() 而非 length === 0,是为了同时清掉「假空行」(肉眼像空、其实有空格或制表符)。两种删除项分开勾,让你能只删完全空行、保留假空行,或反过来。
③ 遵循哪个标准:换行同时兼容 \n 与 \r\n(Windows 复制常见),用正则 /\r?\n/ 统一切。输出统一用 \n,不带回车,避免跨平台再出现空行错乱。
④ 输入怎么变成输出:7 行文本切出 7 个元素,3 个经 trim() 为空被删,剩 4 个有内容行 产品名称/核心卖点/价格/库存 拼回,得到 4 行结果,行数提示「7→4,删 3」。
⑤ 边界与阈值:空输入输出空,不报错;全空文本输出空并提示「没有可保留的行」。勾「压成一个」时,连续空行段只留 1 个,不会把段落间的分隔也删光。
⑥ 常见误用的正确解释:以为只删完全空行就够——其实复制来的「假空行」含空格,必须用 trim 判断才会清掉;输出统一 \n 不是 bug,是跨平台更稳;行内首尾空格本页不动,那是另一工具职责。
完整示例(数值仅作演示)
保持演示输入(7 行,空行在第 2、4、6 行),开启两项默认删除、不压缩:
- 切分:7 行 → 3 个空行(trim 后为空)被删。
- 保留:产品名称:蓝牙耳机 / 核心卖点:主动降噪 / 价格:299 元 / 库存:现货,共 4 行。
- 行数提示:处理前 7 行 / 处理后 4 行,删除 3 行。
- 若勾「连续空行压成一个」:原 3 个分散空行本就各不相邻,结果相同;若是连续 3 空行则压成 1 个。
这组与页面默认文本框、行数提示、对照表第 1 行(网页复制 22→16)思路一致,可三处核对。
输入范围与对照表
删除空行的对照表列出不同文本类型清理空行前后的行数变化(均开启两项默认删除):
| 场景 | 处理前行数 | 空行数 | 处理后行数 |
|---|---|---|---|
| 网页复制正文 | 22 | 6 | 16 |
| 表格粘贴 | 14 | 2 | 12 |
| 代码块 | 31 | 3 | 28 |
| 日志片段 | 40 | 12 | 28 |
| 邮件正文 | 18 | 5 | 13 |
| Markdown 文档 | 25 | 8 | 17 |
| CSV 文本 | 11 | 1 | 10 |
| 聊天记录 | 33 | 9 | 24 |
| 说明文档 | 19 | 4 | 15 |
| 配置文件 | 27 | 7 | 20 |
| 网页源码 | 50 | 18 | 32 |
| 商品描述 | 9 | 2 | 7 |
| 论坛帖子 | 16 | 5 | 11 |
| 评论区 | 21 | 6 | 15 |
| 导出报表 | 13 | 3 | 10 |
| 纯文本笔记 | 8 | 2 | 6 |
对照表能看出「网页/源码空行最多、CSV 最少」:复制来源越「富」(网页、源码),夹带空行越凶,清理收益越大。
结果边界和舍入
输出性质:结果是清理后的纯文本,换行统一为 \n(LF),不带回车 \r,跨平台粘贴都不会再冒出空行。
什么时候会提示:输入为空时输出空,不报错;全部是空行时输出空并提示「没有可保留的行」,不会假装成功。
压缩与保留:勾「连续空行压成一个」保留段落分隔(一段一空行),不勾则空行全删、段落紧挨。两种都只动空行,有内容的行一字不改。
结果用途:这是行级清洗,不动行内首尾空格与内容;要连行内空格一起清,请配合去空格工具再处理一遍。
常见问题
为什么有的空行删不掉?
那可能是「假空行」——里头有空格或制表符,肉眼像空其实不是。本页默认勾「删除仅含空格/制表的行」用 trim 判断,会一并清掉;若你只勾了「删除完全空行」,假空行会留下。
删除空行会动我的文字吗?
不会。只删空的或假空行,有内容的行(包括行内首尾空格)原样保留。要清行内空格请用去空格工具。
连续空行能只留一个吗?
能,勾「连续空行压成一个」。连续多个空行段会各保留 1 个,既干净又保留段落分隔;不勾则全删、段落紧挨。
Windows 的换行兼容吗?
兼容。切分用 /\r?\n/ 同时认 \n 和 \r\n,输出统一 \n,所以从不同系统复制来的文本都能正常清理。
处理完行数变少正常吗?
正常,变少的就是被删的空行。行数提示会写明「处理前/后/删除」,若删得比你预期多,检查是否误勾了假空行项。
能按关键词删行吗?
不能。本页只认「空」与「假空」,不解析内容。按关键词过滤行请用对应的行过滤工具。
大段文本会卡吗?
按行数组处理,几千行无压力。极长文本建议分段;结果按原顺序一一对应,不会乱序。
我的输入会被保存或上传吗?
不会。全部在浏览器内切分与过滤,刷新即清空;处理时不发任何网络请求。
相关工具
- 英文标题大小写转换:清理后顺手统一标题大小写。
- 统计元音辅音个数:清洗后做字符统计。
- 添加行数字转文本:清理后为每行补序号。
- ASCIIArt文本生成器:干净文本再生成字符画。
- Capitalize开头字母工具:每行句首字母大写。
- 删除重复行:清完空行再去掉重复行。
- Twitter字体生成器:清理后的短文本做社交字体。