在线删除空行 · 一键清理空白行 | DedupeLines
DedupeLines
免费 · 无需注册 浏览器本地处理 · 零上传 · 单次 80 MB

在线去除空行

粘贴任意文本,把所有空行(包括「看起来空但有空格」的行)一次性清掉。跟首页去重工具不同,这里不会去重 — 非空行原样保留,只是把空行扔掉。

输入 · 0 行
输出 · 0 行
在左侧粘贴内容 — 结果会实时出现在这里。

或按 Ctrl+Enter

输入行数 0
空行数 0
输出行数0

什么时候用这个工具

指南
01 / 日志 / CSV 清洗

日志和 CSV 导出常常夹着随机空行。粘到这里一次清掉,下游工具拿到一块连续干净的数据。

02 / AI / 大模型输出

大模型喜欢用空行「撑可读性」。粘贴、清空行,就能直接喂给表格或下游解析器。

03 / 邮件列表导入

CRM、Sheets、Mailchimp 的导出经常带尾部空行。重新导入前清一下,避免校验报错。

04 / Excel / Sheets 粘贴

从电子表格里复制非连续区域,粘到别处会带空行(原本的空缺)。粘到这里一处理,拿回连续的列表。

使用方法

三个步骤
  1. 01

    粘贴文本

    日志、CSV 导出、AI 输出、抓取内容 —— 任何混杂空行的文本。

  2. 02

    决定是否修剪空白

    「修剪空白」默认打开 —— 每个保留行的首尾空白被去除。关闭则保留所有非空行的原始格式。

  3. 03

    点击执行

    空行和纯空白行消失,剩余行的顺序保持不变。

引擎内部

工程笔记
"空"的定义
空字符串 或 匹配 /^\s*$/

能捕获 Tab、普通空格、Unicode 空白(NBSP、en-space、em-space 等)。只含不可见 Unicode 空白的行也算空。

吞吐
2024 款 M3 MacBook Air 上 10 万行清理约 100 ms

线性单次扫描,每行一次正则测试,丢弃行不做额外分配。

线程
文件 ≥ 2 MB 或 ≥ 10 万行时启用 Web Worker

超过桌面端阈值时页面保持可响应,Worker 处理文件并以 .txt 下载交付。

隐私与限制

数据留在哪里

一切都在浏览器内运行 —— 没有上传、没有 fetch、没有针对粘贴内容的统计。加载后离线可用。单次硬上限 80 MB。

常见问题

问答

什么算空行?

两个条件:(1) 字符串完全为空,或 (2) 匹配正则 /^\s*$/ —— 即只包含空白字符。这会捕获普通空格、Tab,以及 NBSP(U+00A0)、en-space、em-space、零宽空格等不可见 Unicode 空白。

非空行会被改动吗?

只有当「修剪空白」开关打开时(默认打开)才会修改。「修剪空白」关闭时,每个非空行原封不动 —— 首尾空白都保留。这个工具只改它删除的行,不改它保留的行。

跟 `grep -v "^$"` 有什么区别?

`grep -v "^$"` 只能抓真正完全为空的行,不抓纯空白行 —— 只有一个空格的行会通过 `grep -v "^$"`,但会被这个工具删除。Shell 一行更贴近的写法是 `grep -Ev "^\s*$"`。

我的文本会上传吗?

不会。所有处理都在你的浏览器标签内进行。没有 fetch、没有 XHR、没有针对你输入的遥测。加载后离线可用。