站内精选

一句话结论

批量替换别直接让 AI 写正则:先给 50 条真实样本让它列规则,再逐条回放验证,规则才能上量。

这篇解决什么问题

手里有一批导出的文本,几十到几千条,格式乱得离谱:全角半角混着、标点重复、空格多到像排版练习。想一次性统一成同一种格式,又不敢直接全量跑,怕把干净的也改坏。

适用:文本量大、格式毛病有共性、你手上已经攒到一批能代表全貌的样本。不适用:只有三五条要改(手改更快),或者每条要不要改都得靠业务判断。

开始前要准备什么

  • 一个对话式 AI:Claude 网页版免费额度够日常用,Cursor 里要付费
  • 一份 50 条上下的真实样本,脱敏后存成纯文本
  • VS Code,改的时候要勾上查找框里的 .* 正则开关
  • 一个表格工具记「原值 → 期望值」,飞书表格就够
  • 时间:样本整理 10 分钟上下,规则调通通常半小时内

具体怎么做

第 1 步 · 摊平样本,标出改后样子

50 条不用特意挑,按导出顺序取前 50 条反而是最好的样本,脏的地方通常是均匀分布的。你只用手改其中 4 条,让 AI 看见你的判断标准就行。

你是我的数据清洗助手。下面是一批从系统导出的文本字段,我要把它们统一成同一种格式。
【原始样本】共 50 条,编号 S01 到 S50,原样粘贴,不做任何清理:
S01:【急】 退换货申请 怎么处理??
S02: 订单号 2024 0715 查询
S03:客户7788 反馈:物流太慢!!!
S04:(加急)发票 抬头 写错了
S05:转人工——请回电
S06:商品名称: 测试 商品 A 12 型号
(把剩余样本按同样格式接在后面)
【我手动改好的示范】只改这 4 条,作为我的判断标准:
S01 → 退换货申请怎么处理
S02 → 订单号20240715查询
S03 → 客户7788反馈物流太慢
S04 → 加急发票抬头写错了
现在先别给我正则表达式。只做一件事:把我改动的地方归纳成规则,用「规则名 / 触发条件 / 期望结果 / 涉及样本编号」四列输出成表格。凡是你猜不准我意图的地方,单独列在表格下方问我。

预期产出:一张四列的规则草表,外加几个 AI 反问你意图的问题。那些问题往往就是后面最容易返工的地方。

第 2 步 · 先排顺序,别急着要正则

清洗是有先后的。去空格放太早,会把刚补上的分隔符一起吃掉;去括号放最前,又可能让后面的匹配整个错位。我第一次跳过了这一步,规则单跑都对,串起来全乱。

上一步的规则表我看了,现在做排序,先不写正则。
要求:
1. 按「必须先后执行」的顺序重排,越靠前越先跑;
2. 相邻两条如果会互相影响(前一条改完导致后一条匹配不上,或者后一条把前一条的结果又改坏),在规则后面标「与上一条冲突」并说明原因;
3. 另起一段列「顺序无关」的规则,这些先跑后跑都行;
4. 这一轮只排顺序,不要输出任何正则表达式。

预期产出:一份带冲突标注的执行顺序表,加一组可并行的独立规则。有冲突的那几条,就是需要重新拆分的候选。

第 3 步 · 一条规则一条正则

很多人图省事,直接让 AI 给一条万能正则,看着很爽,真出问题就没法调了。拆成一行一条,哪条错就停哪条,这是能不能自己接手维护的分水岭。

现在把排序表转成可执行的替换规则,一条规则一行,用表格输出四列:
规则名 | 查找(正则) | 替换为 | 用在哪
写的时候遵守这几条:
1. 优先用最保守的写法,能不用 .* 就不用,非要用就加数量上限,比如 .{1,20};
2. 明确 ^ 和 $ 的位置,说清楚是全字符串匹配还是局部匹配;
3. 「替换为」这一列如果是空,写「留空」,不要写 null;
4. 每行正则后面用一句话说明它会匹配到什么,方便我人工核对;
5. 另外单独告诉我:哪些规则在 VS Code 的查找替换里能直接跑,哪些必须放进 Python 脚本。
补充背景:我主要在 VS Code 里操作,会勾选查找框的「使用正则表达式」;另有一部分数据走 Python 脚本。Excel 自带的查找替换不认正则,这个我知道,不用提醒。

预期产出:一张四列替换表,查找、替换为、用在哪都齐了,每行还带一句中文说明。你人工扫一遍就能挑出明显不对的。

第 4 步 · 50 条回放,只要 PASS 或 FAIL

这一步是全文的重点。让 AI 拿同一批样本真的跑一遍,而不是让它自己拍胸脯说「规则正确」,要的是逐条结论。

接下来做回放验证。请严格按上一步的规则表,对下面 50 条样本逐条模拟执行。
输出一张表格,五列:
编号 | 原始值 | 执行后 | 我的期望值 | 结论
规则:
1. 「结论」这一列只能填 PASS 或 FAIL,不要写「大概」「可能」;
2. FAIL 的行,在表格下方单独用列表说明是哪条规则出的问题、错在哪里;
3. 全部跑完后,最下面给一行统计:PASS 多少条、FAIL 多少条、通过率多少;
4. 不许修改我的期望值去凑 PASS。没有给期望值的行,结论列统一写「待核对」。
样本和期望值如下:
S01 | 【急】 退换货申请 怎么处理?? | 退换货申请怎么处理
S02 | 订单号 2024 0715 查询 | 订单号20240715查询
S03 | 客户7788 反馈:物流太慢!!! | 客户7788反馈物流太慢
(把剩余样本按同样格式接在后面)

预期产出:一张带编号的验证表,加一份失败清单和通过率统计。第一遍很少有全过的,这是正常现象,不用怀疑方向。

第 5 步 · 补反例,把误伤堵住

漏改看得见,误伤看不见,这步最容易被跳过。我踩过一次:一条去空格的规则把「型号 A 12」改成了「型号A12」,型号对不上,后面排查了好一阵。

再帮我查一遍误伤。下面这些是「不该被改动」的样本,它们看起来和上面的脏数据很像,但业务含义不同,必须原样保留。
【必须保持原样的样本】
N01:商品 型号 A 12 的配件
N02:订单号 20240715 已发货
N03:客户 7788 转 9900 分机
N04:【重要】请勿回复本邮件
请对照上一步的规则表逐条说明:这几条会被哪条规则命中、命中后变成什么、是否需要加例外。需要加例外的,直接给出修正后的正则(仍然是四列:规则名 | 查找 | 替换为 | 用在哪),并在说明里写清这个例外是为了保护什么。

预期产出:一份例外清单,以及几条被追加了边界条件的修正正则。反例样本建议攒到 10 条以上再收手。

第 6 步 · 落成一张能存下来的规则卡

规则调通不算完事,得让它下次还能用。写成 Markdown 放进项目文档或者知识库,换一批数据直接搬过去。

最后把规则整理成一份可以存下来复用的清单,用 Markdown 输出。
格式要求:
1. 开头写清楚这份规则适用的字段类型、适用的系统、以及最后一次验证用了多少条样本;
2. 规则用表格:规则名 | 查找(正则) | 替换为 | 适用场景 | 已知例外;
3. 「已知例外」这一列必须写实,没有就写「无」,不许省略这一列;
4. 表格后面附一段「换到新数据上怎么复测」的三步小流程,让下次不用重新想;
5. 全篇不要出现具体的客户名、手机号、订单号,统一用 X 占位。

预期产出:一份带适用说明、正则表、例外清单和复测流程的规则卡。这才是这次真正带走的东西。

实测记录

环节 实际情况
样本整理 约 10 分钟,50 条原样粘贴,手改 4 条
规则生成到排序 两轮对话,出来 9 条规则,其中 2 条互相打架
50 条回放 第一遍过了四十条上下,剩下的漏改和误伤各占一半
误伤修正 补了 3 条例外,反例样本从 4 条扩到 11 条
整体耗时 半小时上下,省力的地方主要在「想规则」

成本上没什么可算的,网页版对话的免费额度足够跑完这一整套,真正花的是你读验证表的时间。

和手工比:50 条这个量级,熟手手改未必慢多少。但手工有两个问题,一是换个人做结果会不一致,二是量一旦上到几百条就顶不住了。规则的好处是可以重跑。

最容易错的 3 个地方

  1. 只给 AI 三五条样本。纠正:样本太少它只能猜,凑到 40 条以上再开口。
  2. 让它输出一条万能正则。纠正:拆成一行一条,错了能定位,接手的人也看得懂。
  3. 信了 AI 自己说的「验证通过」。纠正:它算正则是靠推演,边界字符容易错,必须在 VS Code 或脚本里真跑一遍。

可复用的东西

六个提示词按顺序串起来就是一套固定流程:归纳规则 → 排执行顺序 → 出正则表 → 50 条回放 → 补反例 → 出规则卡。前四步几乎每个清洗任务都能直接套,第五步的反例样本每次得按业务重写。

建议把第 3 步和第 6 步的提示词单独存成片段,把正则表的列固定下来,以后新增规则往里加行就行,不用再重新组织语言。

总结一句:AI 在这里的价值不是替你写对正则,是逼你把规则想清楚,再拿样本一条条验。流程听着笨,但比我以前凭感觉全量替换稳当得多。你手上那批数据,最难洗的是哪一类?

常见问题解答

手头只有十几条样本,能开始吗?

能,但要把最脏、格式最不统一的几条都放进去,别拿全干净的样本去推全量。验证阶段再慢慢补样本,攒到四十条以上结论才稳。

这些正则能直接在 Excel 里用吗?

不能。Excel 自带的查找替换只认通配符,不认正则。要么把整列粘到 VS Code 里跑完再贴回来,要么写段 Python 读表格批量处理。

AI 说验证全通过了,我还得自己跑一遍吗?

得跑。AI 逐条模拟正则是靠推演,碰到边界字符容易算错。两边结果对不上时,以真实工具跑出来的为准。

小程序阅读免费
微信扫码进入小程序,按岗位找 AI 实操步骤
微信扫码进小程序
按岗位找 AI 实操步骤 · 提示词可收藏

发表回复

后才能评论