[问题] 变量放在正则表达式中

楼主: jerkoffme (摩德男孩)   2019-03-21 14:41:28
[问题类型]
想将变量放入正则表达式中不知道该如何下手
[软件熟悉度]:使用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
作者: andrew43 (讨厌有好心推文后删文者)   2019-03-21 14:48:00
重点在于“你的资料”日期时间的格式把你的日期时间列几个出来之后转换成日时物件来运算或取范围才是正解。若真的只是要制作pattern,用paste。
楼主: jerkoffme (摩德男孩)   2019-03-21 14:56:00
喔喔对吼不用拘泥于正则表达式,我懂了阿哈哈好白痴的

Links booklink

Contact Us: admin [ a t ] ucptt.com