拿到一份从系统导出的名单、工单或 CSV,最先看到的往往不是业务问题,而是重复行、空行、行尾空格和混乱的编码。手动删几行可以,上百行就容易出错。下面这套流程以 Notepad++ 为主,按顺序做,能把大多数杂乱文本整理成可交付文件。
准备工作:副本、编码与可见字符
- 先另存副本,文件名加上日期和“清理中”,原文件保持不动。
- 在“编码”菜单确认来源:中文 Windows 导出常见 GBK,跨平台协作用 UTF-8;不确定时先“转为 UTF-8”再另存。
- 打开“视图 > 显示符号 > 显示所有字符”,检查换行是 CRLF 还是 LF;给 Excel 用的 CSV 通常保留 CRLF,UTF-8 带 BOM 可减少中文乱码。
- 再打开“显示空格与制表符”,后面找多余空格会更直观。
第一步:先看数据长什么样,再决定删什么
- 用 Ctrl+F 查找关键分隔符,确认是逗号、制表符还是竖线。
- 用“查找 > 查找全部”统计待处理字符的数量,比如连续两个逗号、全角空格。
- 先处理一行样本,确认替换结果,再点“替换全部”。这是 Notepad++ 正则替换最稳妥的习惯。
第二步:去除重复行
- 菜单“编辑 > 行操作 > 删除重复行”,多数版本可直接使用;执行前先保存副本。
- 如菜单名称略有差异,可在“编辑 > 行操作”下找“移除重复行”或类似项。
- 处理完用 Ctrl+F 搜索一个原本重复的值,确认只剩一条;如果业务要求保留最后一次出现,不要直接用该功能,改为标记后人工核对,或先加序号再处理。
- 对大小写不敏感的名单,先统一大小写再删除重复行,避免“ABC”和“abc”被当成两条。
第三步:删除空白行和只含空格的行
- 先替换只含空格的行:按 Ctrl+H,查找模式选“正则表达式”,查找 ^[ \t]+$,替换为空,点“替换全部”。
- 再用“编辑 > 行操作 > 删除空行”,把真正的空行清掉。
- 如果只想删连续空行、保留单个空行分段,不要用“删除空行”,改用正则把连续两个以上换行合并,并先在小样本验证。
- 删除后看一眼文档地图上的行数变化,异常减少就立即撤销。
第四步:清理首尾空格与不可见字符
- 去行首空格:正则查找 ^[ \t]+,替换为空。
- 去行尾空格:正则查找 [ \t]+$,替换为空。
- 全角空格常混在中文名单里,可查找“ ”(全角空格)替换为半角空格或直接删除;替换前用“查找全部”看数量。
- 不要顺手勾选“匹配大小写”“整个单词”等无关选项,避免漏替换。
第五步:统一分隔符与字段格式
- 处理 CSV 时,把中文逗号统一成英文逗号要谨慎:如果字段内容本身含逗号,直接替换会破坏列结构。应先确认字段是否带引号,必要时只替换分隔位置。
- 名单类文本可先把连续多个空格替换为一个空格:正则查找 [ ]{2,},替换为一个空格。
- 手机号、编号的前导零容易丢,给 Excel 打开时优先选 UTF-8 带 BOM;若用记事本另存,注意不要存成 ANSI。
- 用“编辑 > 列编辑”给多行加统一前缀或序号,比逐行敲更快;操作前先选中相同列宽。
第六步:用标记和查找全部做交付前抽检
- 用“查找 > 标记”把可疑内容高亮,比如空字段、连续分隔符、异常字符,再逐处看上下文。
- 随机抽十行与原始文件对照,重点看首行、末行、含引号的行、含中文的行。
- 保存为“原文件名_清理完成_日期.csv”,保留原文件;发给同事时同时说明编码和换行格式。
- 如果还要继续编辑,建议另存一份 UTF-8 无 BOM 版本,避免某些系统读取表头异常。
收尾:把步骤固化成自己的清单
- 备份、看编码、去重、清空行、修空格、验分隔符、抽检、另存,这八步可覆盖多数日常文本清理。
- 每次替换前先“查找全部”计数,替换后看行数和标记结果,比凭感觉可靠。
- Notepad++ 的优势是轻量和直接,但批量操作除了撤销没有别的保险,副本和抽检不能省。