【问题标题】:Formula to Remove Repeated Words in a Cell in Google Sheets删除Google表格单元格中重复单词的公式
【发布时间】:2021-10-06 17:07:07
【问题描述】:

我创建了一个公式,将来自 Google 表格中不同单元格的文本连接在一起。问题是这些单元格中的一些不时包含相同的单词,最终出现在连接的文本中。

例如,不是说“Large Blue T-Shirt”,而是说“Large Large Blue T-Shirt”或“Large Blue Blue T-Shirt”等[这只是一个说明性示例]。

我已经看过了,但到目前为止我找不到删除一行文本中重复单词的公式。这样的公式存在吗?如果是这样,那个公式是什么,我将如何使用它?

如果没有,那么我可以使用其他公式来获得所需的结果吗?同样,这些公式是什么,我将如何使用它们?

谢谢。

【问题讨论】:

  • 您可以使用 split 和 unique ,但这会删除所有重复的单词,因此“The cat sat on the mat”将是“The cat sat on mat” - 不确定是否可以。也就是说,你只是想把连续的相同单词变成一个单词吗?
  • 如果您可以共享指向您的电子表格(或电子表格的副本)的链接(其中已经包含至少 10 或 15 行真实样本),那么效率会更高(并且可以更快地为您提供帮助)数据。确保在共享此类链接时,将链接的共享权限(创建链接时)设置为“知道链接的任何人...”和“编辑”,以便此处的人员可以在电子表格中进行测试并留下解决方案电子表格(可能在单独的工作表/选项卡上)。另外,请说明每个原始数据单元格的空格分隔单词的最大数量。
  • 分享您的工作表副本
  • 我要补充一点,我相信这可以通过一个公式来完成,该公式可以检测和删除每个单元格的所有重复,无论重复的单词是并排还是被其他单词分开。如果在合理的时间范围内共享指向可访问工作表的链接,我将很乐意进一步调查。

标签: google-sheets google-sheets-formula spreadsheet


【解决方案1】:

这里有一个帮助列B

=index(flatten(split(filter(A1:A&"⮐",A1:A<>"")," ")))

=index(trim(flatten(split(trim(query(if(B1:B={B2:B;""},,B1:B),"",9^9)),"⮐"))))

【讨论】:

    【解决方案2】:

    虽然问题没有这样标记,但也许脚本是要走的路:

    function removeDups(inString) {
      var arr;
      var outString;
      arr=inString.split(" ");;
      outString= arr[0];
      for(var i=1;i<arr.length;i++)
      {
        if (arr[i]!=arr[i-1]) outString=outString+" "+arr[i];
      }
      return outString;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-08
      • 1970-01-01
      • 1970-01-01
      • 2016-09-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多