RegEx从Google表格单元格中的字符串获取日期格式的最后一个匹配项

弗雷迪

我的目标是使用Google表格中的Regex(表格功能:regexextract)提取日期字符串和以下字符,其中字符串是单元格的最后一行,并以日期格式“ yyyy-DD-MM”开头,后跟“:” 。因此,我目前拥有的RegExpression看起来像:\d{4}-\d{2}-\d{2}:.+

这可以正常工作,但它返回第一个匹配项。相反,我想从单元格的末尾开始,并在有多个日期字符串时提取最后一个匹配项。这是因为内容在单元格中按日期升序存储。

样品池:

2020-05-20: Status update blah blah
2020-05-27: PO Issued blah blah

请求的结果:我希望最终结果是一个以日期开头的字符串,以及最后一个结果为“ 2020-05-27:PO Issued blah blah”之后的字符。但是,我始终会在上面的示例中获得第一场比赛:“ 2020-05-20:状态更新等等”

我也在谷歌表中使用regexextract()做到这一点,这不应该在正则表达式中有所作为,而只是想提一下

编辑:我发现工作表正在使用RE2,所以我想它确实有所作为。

维克多·史翠比维

您可以使用

=REGEXEXTRACT(A1, "(?m)^\d{4}-\d{2}-\d{2}:.*\z")

请参阅RE2正则表达式演示和Google表格截图:

在此处输入图片说明

(?m)^\d{4}-\d{2}-\d{2}:.*\z正则表达式匹配

  • (?m)-MULTILINE修饰符,使^匹配行的开头和$匹配行的结尾
  • ^ -一行的开始
  • \d{4}-\d{2}-\d{2}:.*-4位数,,-2位数,,-2位数,:然后是行的其余部分,因为.默认情况下不匹配换行符
  • \z-字符串的最末端(不受(?m)修饰符的影响)。

请注意,(?s).*\n(\d{4}-\d{2}-\d{2}:.*) 我建议在问题下方的顶部注释中,将匹配以日期开头的最后几行,请参阅regex演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

谷歌表,如果字符串匹配,并且是单元格集合中的最后一个匹配字符串,则获取单元格嵌套的值

从 Google Sheets 中最后一个空格后的单元格中获取子字符串

如何获取不为空的列的最后一个值并将其与Google表格中的单元格匹配?

ISO格式的Google表格单元格中的日期字符串

获取Google表格中列中的最后一个非空单元格

从串联字符串中删除Excel中最后一个单元格的逗号

在一个单元格中查找具有不同字符串的匹配单元格

Excel:在空白单元格之前返回最后一个匹配字符串左侧的值

在一个单元格中以字符串形式获取正文中的文本

获取Google表格中列中的最后一个非空单元格(不包括公式)

在一个单元格中搜索文本字符串以匹配另一个单元格

Google表格从另一个表格中的单元格查询日期值

谷歌表格获取行中的最后一个非空单元格

从单元格中提取最后一个子字符串

在单元格值字符串的长度为1的行中查找最后一个值

Python Pandas检查单元格中列表的最后一个元素是否包含特定的字符串

从单元格获取日期并将其放置在另一个格式化的单元格中

对于每一行,找到与特定字符串匹配的单元格并返回列名的最后一个字符

基于 Google 表格中另一个单元格值的条件格式

谷歌表格获取行中第一个和最后一个彩色单元格的地址

根据 Google 表格中的第一个单元格格式化列中的单元格

匹配(同一工作簿)中的(另一个工作表)单元格时的条件格式?Google表格

Google 表格将文本字符串单元格转换为日期 + 持续时间单元格

在单元格中包含一个字符串

字符串在一个单元格中搜索多个值

如何将一个单元格中包含的字符串分成几个?

如何使用Python将字符串写入csv中的一个单元格?

复杂的Excel问题,解析字符串然后从匹配单元格旁边的单元格获取最大日期

Google表格正则表达式从一个单元格中提取多个文本字符串