You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Google Spreadsheet中用公式复制字符串并添加数字后缀

解决方案

不需要学习QUERY函数,使用LAMBDA系列函数搭配你已经了解的SPLIT、JOIN、ARRAYFORMULA即可实现需求。

单个单元格处理公式(以处理A2单元格内容为例)

=JOIN(",", FLATTEN(BYROW(SPLIT(A2, ","), LAMBDA(i, ARRAYFORMULA(IFERROR(SPLIT(REPT(REGEXEXTRACT(i, "(.+)#")&"|", REGEXEXTRACT(i, "#(\d+)")), "|"), i))))))

公式逻辑说明

  1. SPLIT(A2, ",")将单元格内容按逗号拆分为多个物品#数量的独立片段
  2. BYROW + LAMBDA遍历所有拆分后的片段,对每个片段单独处理:
    • REGEXEXTRACT(i, "(.+)#")提取#符号前的物品名称
    • REGEXEXTRACT(i, "#(\d+)")提取#符号后的数字作为重复数量
    • REPT(物品名&"|", 数量)将物品名加临时分隔符|重复对应次数
    • 再次按|拆分重复后的内容,得到对应数量的物品名数组
  3. FLATTEN将多维数组拍平为一维数组,最后用JOIN(",")拼接为最终字符串
  4. 公式内置IFERROR容错,若某条片段没有#数量结构,会直接保留原片段内容

整列自动处理公式

将公式粘贴到B列首个输出单元格(如B1),即可自动识别A列所有非空单元格,对应生成B列结果:

=BYROW(FILTER(A:A, A:A<>""), LAMBDA(row, JOIN(",", FLATTEN(BYROW(SPLIT(row, ","), LAMBDA(i, ARRAYFORMULA(IFERROR(SPLIT(REPT(REGEXEXTRACT(i, "(.+)#")&"|", REGEXEXTRACT(i, "#(\d+)")), "|"), i))))))))

内容的提问来源于stack exchange,提问作者J. SungHoon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 18:15:03