【问题标题】:Extracting day,month,2-digits year from text in Google Sheets using Regexextract使用 Regexextract 从 Google 表格中的文本中提取日、月、2 位数年份
【发布时间】:2020-06-10 16:22:30
【问题描述】:

不胜感激。

这就是文本的样子 11jun2018/M , 16JUL1976/F(出生日期+男性或女性)

我需要得到下一个结果:11jun1816jul76

我尝试了\d{2}\w{3}\d{4},结果为11jun2018,我还发现\d{2}(\d{2}) 的结果为18,但我不知道如何将这两个正则表达式结合起来。

因为当我团结时,我会得到以前的结果(只有18,而不是11jun18)。

也希望有一些针对傻瓜的正则表达式指南

【问题讨论】:

  • 我怀疑你有像 1aug2018 这样的数据?还是也格式化为 01aug2018?
  • 是的,对不起,忘了提,它是第二种格式,包括(零),就像你写的 01aug2018
  • 在这种情况下,老实说,我认为不需要正则表达式。

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


【解决方案1】:

你可以使用

=LOWER(REGEXREPLACE(A1,"^(\d{2}[a-zA-Z]{3})\d{2}(\d{2})/[MF]$", "$1$2"))

如果没有匹配则必须为空结果在末尾添加|.+

=LOWER(REGEXREPLACE(A1,"^(\d{2}[a-zA-Z]{3})\d{2}(\d{2})/[MF]$|.+", "$1$2"))

这里,

  • ^ - 匹配字符串的开头
  • (\d{2}[a-zA-Z]{3}) - 将 2 个数字和 3 个字母捕获到第 1 组 ($1)
  • \d{2} - 匹配两位数
  • (\d{2}) - 将两位数捕获到第 2 组 ($2)
  • / - 斜线
  • [MF] - MF 匹配
  • $ - 字符串结束
  • |.+ - 或匹配任何其他字符串,尽可能多地匹配除换行符以外的 1 个或多个字符。

看截图:

【讨论】:

  • 谢谢,它有效。但我需要在公式中使用它,并希望一切看起来尽可能简单。是否有可能以某种方式统一我试图得到的结果?
  • @ValeraLexiutchin 我 am 使用公式。我已经将你所拥有的“统一”成一个。
  • 再次谢谢你,我终于想通了,还尝试了其他的东西谢谢你。我想写我试过的东西。我应该在这里做还是应该编辑问题,这样它会更明显其他人第一次打开页面时?抱歉问得太多了,我在这里有点新。
  • @ValeraLexiutchin 如果是不同的解决方案,请添加您自己的答案。
【解决方案2】:

你可以试试:

使用的公式:

=ARRAYFORMULA(LEFT(REPLACE(LOWER(FILTER(A1:A,A1:A<>"")),6,2,),7))

【讨论】:

    【解决方案3】:

    Tnx to Wiktor Stribiżew 公式我尝试了更多的东西,在这里我想出了:

    1.我从一开始就做了我想做的事,将我的 2 个正则表达式:\d{2}\w{3}\d{4}\d{2}(\d{2}) 合并为 =REGEXEXTRACT(A1,"(\d{2}\w{3})\d{2}(\d{2})") 但正如您在屏幕截图中看到的那样,它将答案写入 2 个单元格(B51,C51)。

    -我想提醒一下,单元格 C51 不包含任何公式。

    我们可以将 B51 中的公式分成两个正则提取公式并将它们连接起来。

    点赞=REGEXEXTRACT(A1,"\d{2}\w{3}")&amp;REGEXEXTRACT(A1,"\d{2}(\d{2})")

    =REGEXEXTRACT(A1,"\d{2}\w{3}") 产生 06JUL=REGEXEXTRACT(A1,"\d{2}(\d{2})") 产生 77

    请参阅下面的 Google 表格链接

    2.如果您不喜欢第一种方法,我们也可以这样做:

    由于我们从 REGEXEXTRACT 函数中得到了数组的响应,我们可以使用函数 JOINTEXTJOIN

    摆脱它

    =JOIN("",REGEXEXTRACT(A1,"(\d{2}\w{3})\d{2}(\d{2})"))

    我决定更好地为那些有兴趣检查我上面提到的解决方案的人提供Google Sheet 的链接,而不是制作大量的屏幕截图。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-10-02
      • 2018-02-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多