【问题标题】:Drop leading zeroes from strings in cells从单元格中的字符串中删除前导零
【发布时间】:2014-08-27 05:29:07
【问题描述】:

如何使用相同的公式从以下文本中删除第一个0s?

0700.hk --> 700.hk

0027.hk --> 27.hk

0001.hk --> 1.hk

有些不会是零

1929.hk --> 1929.hk

【问题讨论】:

标签: excel excel-formula google-sheets


【解决方案1】:

在 Google 电子表格中有一个名为 REGEXREPLACE 的函数。所以你可以=REGEXREPLACE(A1,"^0+","") 去掉前导零。

【讨论】:

  • 那是病态。很好的答案!
  • 答案很棒,对我来说也很有魅力。您能否解释一下 ^ 和 + 的作用?我了解它执行以下操作:在 A1 中搜索,找到 0(以及它们的神奇之处(^+)),用空白空间替换它们("")。
  • Canned Man- ^ 表示在字符串的开头,+ 表示出现一次或多次......所以基本上它只是说用任何内容替换字符串开头出现的一次或多次 0
【解决方案2】:

这在 Excel 中适用于您提供的四个示例:

=VALUE(LEFT(A1,SEARCH(".hk",A1)-1))&".hk"

它大概也可以在 Google 电子表格中使用,尽管我还没有在那里测试过。

你可以把它缩短一点,假设它总是一个数字序列,后面跟着.hk

=VALUE(LEFT(A1,LEN(A1)-3)&".hk"

事实上,如果您知道它始终是 位数字的序列,后跟 .hk(正如 @Cole Lange 在对此答案的评论中所指出的那样),您可以进一步缩短它:

=VALUE(LEFT(A1,4))&".hk"

【讨论】:

  • 为什么会这样?你是什​​么意思,一个单一的功能?
  • 啊...当然,但是这样的单一功能存在吗?从字符串中删除前导零?我全神贯注!
  • @Jean-FrançoisCorbett。感谢你的回答。我正在尝试 left mid right 功能但没有成功。 search 函数正是我所需要的。谢谢你。很有帮助。
  • 我能看到缩短的唯一方法是每个单元格只有 4 个数字,在这种情况下,您可以删除 SEARCH() 函数并将其替换为 4
  • @pnuts:好吧,我很高兴看到我的出色答案!投票关闭它作为题外话? ;-)
猜你喜欢
  • 2011-04-09
  • 1970-01-01
  • 1970-01-01
  • 2014-08-09
  • 2012-02-06
  • 2019-10-20
  • 1970-01-01
  • 2014-04-12
  • 2011-07-25
相关资源
最近更新 更多