作者jerkoffme (摩德男孩)
看板R_Language
标题[问题] 变数放在正则表达式中
时间Thu Mar 21 14:41:28 2019
[问题类型]
想将变数放入正则表达式中不知道该如何下手
[软体熟悉度]:使用R大约一年
[问题叙述]:
由於我想要在特定时间产生报表
我利用系统时间来做filter,但因为系统时间是变动的
我想不通如何把变数塞到正则表达式中
[程式范例]:
systime <- ymd_hms(Sys.time())
report_month <- system - lubridate::days(30)
report_month <- str_sub(report_month, star = 1L, end = -13L)
#若以我现在的时间点则得到
>report_month
"2019-02"
我需要将这个变数塞进grepl里,可是我想不透怎麽塞
我需要的结果是捞资料前一个月
故以现在这个资料非动态的应该表达为 "^2019-02"
grepl("report_month所产生的字串", 我的资料)
由於加了" ",系统就会将字串符里的东西视为字串故无法放变数,因此想问是否有解法
[环境叙述]
win10
3.4.4
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.34.112.167
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/R_Language/M.1553150492.A.FC3.html
1F:→ andrew43: 重点在於「你的资料」日期时间的格式 03/21 14:48
2F:→ andrew43: 把你的日期时间列几个出来 03/21 14:49
3F:推 andrew43: 之後转换成日时物件来运算或取范围才是正解。 03/21 14:52
4F:推 andrew43: 若真的只是要制作pattern,用paste。 03/21 14:53
5F:→ jerkoffme: 喔喔对吼不用拘泥於正则表达式,我懂了阿哈哈好白痴的 03/21 14:56