请帮我解决这个问题。我正在尝试搜索字符串的所有相似部分,然后将它们组合在一起,然后将所有数字值添加到字符串的开始部分。

输入:单元格A1

2 x Onsemi 3000K E27; 7 x Onsemi 3000K E27; 9 x Phoenix Eco 7W 4000K B22; 1 x Phoenix Eco 7W 4000K B22

输出:单元格B1
9 x Onsemi 3000K E27; 10 x Phoenix Eco 7W 4000K B22

尝试使用谷歌匹配功能,但在如何将它们合并然后添加数量上却步步艰难。
非常感谢您的帮助。

最佳答案

=ARRAYFORMULA(TEXTJOIN("; ", 1, TRANSPOSE(QUERY(TRANSPOSE(QUERY({
 REGEXEXTRACT(TRANSPOSE(SPLIT(A1, ";")), "(\d+)")*1,
 REGEXEXTRACT(TRANSPOSE(SPLIT(A1, ";")), "\d+ (.*)")},
 "select sum(Col1),Col2
  group by Col2
  label sum(Col1)''", 0)),,999^99))))

regex - 使用Google表格功能组合字符串的相似部分-LMLPHP

10-08 00:28