【问题标题】:Using REGEXREPLACE to Populate the Data from Cell使用 REGEXREPLACE 填充单元格中的数据
【发布时间】:2021-08-22 12:12:58
【问题描述】:

我一直在使用下面的公式,它工作正常,但我想添加一个条件,如果数据单元格和公式输出结果相同,那么它应该添加一些带括号的 cmets,就像我在 Col"C" 中所做的那样。

对问题的任何帮助将不胜感激。

=ArrayFormula(TRIM(REGEXREPLACE(A2:A,"(\*{3}.*?)(?:\s*?\.{3}DONE=>.*)?(\*{3})$","$1 $2")))

Link to Sheet

【问题讨论】:

  • 为什么需要在这里添加?为什么不在 C 列中使用 =ARRAYFORMULA(IF(A2:A9=B2:B9, A2:A9 & " (No measure applicable)", B2:B9)) 之类的东西?
  • 因为如果我使用=ARRAYFORMULA(IF(A2:A9=B2:B9, A2:A9 & " (No measure applicable)", B2:B9)),它的结果会是这样的*** HEDAL - 2020 COMPLETE - IB - 06-01-2021 *** (No measure applicable)而不是这样的*** HEDAL - 2021 COMPLETE - IB - 06-01-2021 (No Measure Applicable) ***
  • 那么,试试=ARRAYFORMULA(IF(A2:A9=B2:B9, REGEXREPLACE(A2:A9, "(\*+)$", "(No change) $1"), B2:B9))吧。
  • 非常感谢@Wiktor Stribiżew 我错过了这个,只是在上面的公式中努力调整它。先生,如果它不打扰您,您可以看看这个问题Question 并请发布答案以便我接受。
  • 那么,以上方法对你有用吗?

标签: regex google-sheets google-sheets-formula regexp-replace


【解决方案1】:

您可以将以下公式添加到 C 列:

=ARRAYFORMULA(IF(A2:A9=B2:B9, REGEXREPLACE(A2:A9, "(\*+)$", "(No Measure Applicable) $1"), B2:B9))

这会将尾随的一个或多个星号替换为(No Measure Applicable) + 空格 + 捕获到组 1 中的星号。

【讨论】:

  • 谢谢@Wiktor Stribiżew
猜你喜欢
  • 1970-01-01
  • 2019-08-09
  • 2011-11-08
  • 2015-06-04
  • 2015-03-03
  • 2017-08-16
  • 2013-04-03
  • 1970-01-01
  • 2013-02-08
相关资源
最近更新 更多