gpt4 book ai didi

regex - 在 R 中提取字符串的一部分

转载 作者:行者123 更新时间:2023-12-05 00:21:42 24 4
gpt4 key购买 nike

我有一个表格字符串

stamp = "section_d1_2010-07-01_08_00.txt"

并希望能够提取其中的一部分。我已经能够通过使用重复的 str_extract 到达我想要的部分来做到这一点,例如抢月
month = str_extract(stamp,"2010.+")
month = str_extract(month,"-..")
month = str_extract(month,"..$")

然而,这是非常低效的,必须有更好的方法。对于这个特定的例子,我可以使用
month = substr(stamp,17,18)

但是我正在寻找更通用的东西(以防数字变化)。

我想我需要正则表达式来获取某些标志(_ 或 - 或第三个 _ 等)之后的内容。我也尝试过使用 sub,但遇到了同样的问题,因为我需要几个来磨练成我真正想要的。

一个如何说出月份(此处为 07)和小时(此处为 08)的示例将不胜感激。

最佳答案

您可以简单地使用 strsplit使用正则表达式 [-_]perl=TRUE获取所有零件的选项。

stamp <- "section_d1_2010-07-01_08_00.txt"
strsplit(stamp, '[-_]')[[1]]
# [1] "section" "d1" "2010" "07" "01" "08" "00.txt"

见演示。

https://regex101.com/r/cK4iV0/8

关于regex - 在 R 中提取字符串的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31175845/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com