如何在 R 中使用 grep 提取变量名的元素

How to extract elements of variable names using grep in R

我有 A_B_C_D 形式的变量名。我想提取第二个 _ 之后出现的任何内容。所以 CD,省去了下划线。

有人可以帮我做这个吗?

谢谢。

查看软件包 stringr。或者,如果您知道您 总是 需要 second _,只需使用 strsplit.

library(magrittr)
"A_B_C_D" %>% strsplit(., '_') %>% {.[[1]]} %>% {.[3:length(.)]}
[1] "C" "D"

你可以试试

unlist(strsplit("A_B_C_D", "_"))[-(1:2)]

[1] "C" "D"

使用正则表达式,subgsub -

x <- 'A_B_C_D'
gsub('_', '', fixed = TRUE, sub('.*?_.*?_', '', x))

#[1] "CD"