对账前的明细里,客户名称常带前后空格或「有限公司」后缀,金额单元格里又夹着千分位逗号、货币符号,占位用的 0、「无」和真正的空值混在一起,筛选和匹配都会对不上。

如果靠 Excel 查找替换,一次误选整列就可能把不该动的字符换掉;去空格、去符号、改空往往要来回做好几遍,也无法沉淀成可复跑的清洗节点。

DT-Bot 的 「行操作」 算子专为解决此类单元格内文本与占位值清洗而设计。它支持去空格、替换、提取、去掉千分位或货币符号、把指定值改成空,以及用同行其它列补空、在明确规则下做单位换算。默认就地改原表,不改变行数和行序。按条件删行、去重、排序请用「表操作」;按 A1 地址改某一格请用「格子编辑」;整列日期/时间统一成某种写法请用「列类型转换」。

一、 核心能力与适用场景

「行操作」算子聚焦于单元格内容改写、表结构不动,覆盖以下核心能力:

核心能力 解决什么业务问题 典型业务场景
去空格、替换与提取 去掉前后空格,按明确文字替换或删除片段,或按规则从单元格抽出需要的内容。 客户名称去空格后再删掉「有限公司」后缀,才能和客商主数据匹配。
指定值改成空 把已经写上的占位值改成空,以便和真正的空值一起筛。 金额里的 0、备注里的「无」改成空,再交给筛选或缺失填充。
去掉千分位或货币符号 只去掉数字单元格里的装饰符号,不改列类型。 金额是 1,234.5、¥88,去掉逗号和货币符号后才能参与计算。
同行其它列补空 空着的格子用同一行已经有的列抄过来或算出来;不从别的表取数,也不用上一行往下填。 客户全称为空时,用同行客户简称填上。

二、 边界指南:它与相近算子有何区别?

在构建数据工作流时,理解算子之间的职责边界至关重要:

比较维度 「行操作」算子 「表操作」算子 「格子编辑」算子 「列类型转换」算子
主要定位 单元格内文本字符清洗 整表行集合与行序治理 按格子地址读写某一个或一块单元格 整列日期/时间/类型写法统一
输出机制 就地更新原表(行数、行序不变) 就地删行/去重/排序 查询不改表;写入默认同表就地 按该算子约定就地或另存
典型动作 去空格、替换、提取、去千分位、指定值改空 删行、去重、整表升降序 按 A1 改某一格、拷矩形 把日期列统一成同一种写法
如何选择 “把客户名称前后空格和「有限公司」去掉” “把作废单删掉,按时间排好” “只改 D2 这一格,不要整列替换” “下单日期整列改成统一日期格式”

三、 提示词编写规范与公式

「行操作」算子支持自然语言直接表达,建议遵循以下标准的三要素编写公式:

【选表范围】 + 【改哪一列】 + 【怎么改】

提示词写清两件事:要处理哪张表(或全部表 / 前缀、后缀、包含);改哪个列、怎么改。

1. 目标表范围表达

  • 单表精准点名:“订单表” :...、“对账表” :...;
  • 批量范围:全部表:...,或以某词开头 / 结尾 / 包含;
  • 默认当前流转表:未点名时继承上一节点流入的表。

2. 核心操作动作表达

  • 去空格 / 替换:去掉 “客户名称” 前后空格、再删掉名称里的 “有限公司”;
  • 提取:写清从哪一列、按什么规则抽出片段;
  • 指定值改空:把 “金额” 里的 0 改成空、把 “备注” 里的 “无” 改成空;
  • 去千分位 / 货币符号:把 “金额” 去掉千分位逗号和货币符号;
  • 同行补空:“客户全称” 为空时,用 “客户简称” 填上;
  • 单位换算:提示词写清换算规则(原文要求在明确规则下换算)。

3. 可复制示例

“订单表” :去掉 “客户名称” 前后空格,把 “状态” 里的 0 改成空。

多张表可以这样写:

全部表:把 “状态” 里的 0 改成空。

四、 核心功能与图解实战

以下结合真实企业数据场景,展示「行操作」在不同需求下的处理效果:

场景 1:去空格、替换文字(行数不变)

业务背景:财务对账前,客户名称带有前后空格和「有限公司」后缀,必须先洗成可与主数据对齐的简称,订单行一条都不能少、顺序也不能乱。

【处理前:订单表】

订单号 客户名称 状态
O1 华为技术有限公司 已付
O2 阿里巴巴集团有限公司 已付

【执行提示词】

“订单表” :去掉 “客户名称” 前后空格,再删掉名称里的 “有限公司”。

【处理后:订单表(就地更新)】

订单号 客户名称 状态 变更说明
O1 华为技术 已付 去掉后缀,状态未动
O2 阿里巴巴集团 已付 行数、行序与订单号均不变

逻辑详解:只改「客户名称」单元格内的字符;「状态」未点名则保持原样。需要从单元格里按规则抽出片段时,在提示词中写清列名与提取规则,同样不改行数行序。


场景 2:把已有值改成空(不是「只填空」)

业务背景:对账表里金额 0、备注「无」是占位,不是有效业务值;财务要把它们改成空,才能和真正的空值一起筛选或交给后续填充。

【处理前:对账表】

订单号 金额 备注
O1 0 无
O2 88 (空)

【执行提示词】

“对账表” :把 “金额” 里的 0 改成空,把 “备注” 里的 “无” 改成空。

【处理后:对账表(就地更新)】

订单号 金额 备注 变更说明
O1 (空) (空) 0 与「无」改为空
O2 88 (空) 88 保留;原备注已空,保持空

逻辑详解:这是把已经写上的值改成空,不是「只填空」。行数仍为 2。若要从另一张表补空列,请用「匹配填充」;若只用本表上行往下填,请用「缺失填充」。


场景 3:去掉千分位、货币符号(不改列类型)

业务背景:销售明细从后台导出后,金额带着千分位逗号和货币符号,看起来是数,实际无法直接参与加减;财务只要去掉装饰符号,不要在这一步改列类型。

【处理前:销售明细表】

订单号 金额
O1 1,234.5
O2 ¥88

【执行提示词】

“销售明细表” :把 “金额” 去掉千分位逗号和货币符号。

【处理后:销售明细表(就地更新)】

订单号 金额 变更说明
O1 1234.5 去掉千分位逗号
O2 88 去掉货币符号

逻辑详解:只改数字单元格里的装饰符号,不改列类型。行数、行序不变。若还要把该列正式转成数值类型,请在清洗后再用「列类型转换」。


场景 4:用同行其它列补空(不跨表、不向下填充)

业务背景:订单表客户全称有的为空,同一行已有客户简称;财务只允许用本行简称补全称,不能从客户主数据取数,也不能拿上一行的名称往下填。

【处理前:订单表】

订单号 客户全称 客户简称
O1 (空) 华为
O2 阿里巴巴集团 阿里

【执行提示词】

“订单表” :“客户全称” 为空时,用 “客户简称” 填上。

【处理后:订单表(就地更新)】

订单号 客户全称 客户简称 变更说明
O1 华为 华为 全称为空,抄同行简称
O2 阿里巴巴集团 阿里 全称已有值,不改

逻辑详解:补空范围仅限同一行已经有的列;不从别的表取数,也不用上一行往下填。跨表按键补列请用「匹配填充」;用上行非空往下填请用「缺失填充」。

五、 常见问题与操作贴士(FAQ)

Q1:为什么执行「行操作」后没有生成新表?

答:本算子默认就地更新原表的单元格,不另存副本。行数、行序、列名保持原样,只改点名列里的字符或指定值。若必须留一份清洗前底稿,请先用「复制表」,再对副本做行操作。

Q2:去空格、替换、改空时,会不会删行、换行序,或改到未点名的列?

答:不会。未写入提示词的列(例如场景 1 的「状态」)保持原样;也不会按条件删行或排序。整表删行、去重、排序请用「表操作」。只改某一个格子地址,请用「格子编辑」,避免整列替换误伤。

Q3:连续跑多条清洗提示词要注意什么?

答:后一条永远作用在前一条已经改过的单元格上。例如先删掉「有限公司」后,名称里已经没有这段文字,再跑同一条替换不会有第二次效果;先把 0 改成空后,金额列已是空,不能再当 0 来算。换规则前请确认当前单元格内容,或重新导入原始表。批量写 全部表:... 时,请确认每张表都有该列,避免把不该动的表卷进来。

六、 关联算子导航