Agent Skills
返回列表
Excel 正则清理

Excel 正则清理

办公效率 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_8f803df1/excel-regex-clean。

技能介绍

要解决的具体问题

从 Excel 里清理文本时,最麻烦的不是不会写正则,而是三件事:正则模式不确定、大小文件处理策略不同、以及担心改坏原始文件。比如有一列 1.1 (新一代),你要么只留括号里的中文,要么删掉所有数字和点,要么把空格换成下划线。手工改慢,写脚本又怕误伤其他列。

@user_8f803df1/excel-regex-clean 来自 SkillHub 上的用户 8f803df1,把这件事拆成三种可预览的模式,并且默认不改原文件。

核心能力

该技能基于 Python re 模块实现正则匹配,根据文件大小自动选择底层库:

  • extract:用捕获组 (...) 圈出要保留的内容,例如 1.1 (新一代) → 新一代
  • remove:匹配要删除的部分,例如 \d+ 删除数字,\. 删除英文点
  • replace:匹配后替换,例如空格 → 下划线,或 CN → 中国

大文件(>10MB 或 >5万行)会走 XML 直接操作 sheet XML 的方案,官方称速度比常规方式快 4 倍。XML 方案严格限定在 sheet 层 + 列号,不碰 sharedStrings,改写的值以 inline string 写入,避免产生新的共享字符串引用。

关键步骤

整个流程分为五步,适合先预览再执行:

  1. 需求解析:把自然语言映射成模式和正则,例如“去掉申请日里的横线”对应 remove 模式、正则 -
  2. 勘察:确认目标列和文件结构
  3. 规划:给出模式和正则,预览无误后执行
  4. 执行:生成 _cleaned.xlsx 副本,原文件不动
  5. 验证:检查替换结果

适用边界与注意点

该技能适合对 Excel 中特定列做正则级别的文本变换,不适合做复杂数据清洗、跨表关联或公式计算。使用时需要注意:

  • 自动生成 _cleaned.xlsx,不修改原文件
  • 正则只处理目标列:XML 方案按列号限定,openpyxl 方案只遍历目标列
  • extract 模式中正则不匹配的保留原样
  • .、(、)、\ 等特殊字符需要转义
  • 建议先预览变换效果再执行
  • 操作前必须自动备份,遵循 [[excel-safe-workflow]];成功后保留最新 3 份,失误后从备份恢复
  • 遵循 [[excel-safe-workflow]] 的安全流程

如果你只是需要对 Excel 中一列文本做正则提取、删除或替换,这个技能比手写脚本更可控,尤其是大文件场景下 XML 方案的表现值得关注。

使用场景

  • 审专利申请表时,用正则只保留新兴产业列括号里的中文,删掉数字和点。
  • 处理申请日列,用正则删除横线,保留可读日期格式。
  • 产品名称列空格替换为下划线,生成符合系统要求的编码。
  • 从混合文本中只提取英文字母,清理包含中文和数字的单元格。

适合人员

  • 处理专利申请表格的法务,需要正则提取或删除特定列内容。
  • 分析销售数据的分析师,要把表格中混合文本按规则清洗。
  • 维护系统导入文件的工程师,需将产品名称空格替换为下划线。