我有一个载体
a <- "20160402"
我想在第5和第8位插入一个“ - ”符号。
结果应该是这样的
"2016-04-02"
我试图使用`ins(a,“ - ”,pos = c(5,8))
但这没效果。任何人都可以帮助我。
谢谢
答案 0 :(得分:1)
我们可以使用lubridate
library(lubridate)
ymd(a)
#[1] "2016-04-02 UTC"
或者使用as.Date
as.Date(a, '%Y%m%d')
#[1] "2016-04-02"
如果我们正在寻找正则表达式解决方案,请将字符作为一组捕获并使用反向引用作为替换
sub('(.{4})(.{2})(.{2})', '\\1-\\2-\\3', a)
#[1] "2016-04-02"