[英]Extract Month from partial date in R
我有一個部分日期字符串
partial <- "UN-Jan-2022"
我想要的 output
> parital
Jan
我正在嘗試通過使用 gsub 來做到這一點,我可以刪除“UN-”或 -“2022”,但不確定如何在一個 gsub 中同時刪除這兩個
gsub("UN-", "", partial)
Jan-2022
gsub("-2022", "", partial)
UN-Jan
另一種可能的解決方案,基於stringr::str_match
和正則表達式捕獲組:
stringr::str_match(partial, ".*-(.*)-.*")[2]
#> [1] "Jan"
另一個gsub
選項提取兩個“-”之間的所有內容,如下所示:
partial <- "UN-Jan-2022"
gsub(".*-(.*)\\-.*", "\\1", partial)
#> [1] "Jan"
由代表 package (v2.0.1) 於 2022 年 7 月 27 日創建
我們可以使用邏輯“或”:
gsub("(UN-|-2022)", "", partial)
#[1] "Jan"
在這里,我們將替代模式分組在“()”中,用“|”分隔。
呃......在這種情況下,“()”並不是完全必要的。
我們可以轉換為Date
格式,然后使用format
format(as.Date(paste0(partial, '-01'), 'UN-%b-%Y-%d'), '%b')
[1] "Jan"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.