3

我有一个分隔的字符串_,我想摆脱最后两个元素。例如,从A_B_C_D我想要返回A_B,从A_B_C_D_E我想要A_B_C。我尝试str_split_fixedstringr

my_string <- "A_B_C_D"
x <- str_split_fixed(my_string,"_",3) 

但它返回"A" "B" "C_D"而不是 "A_B" "C" "D",否则我本可以head(x,-2)做得到A_B

有没有比这更好的方法

paste(head(unlist(strsplit(my_string,"_")),-2),collapse="_")
4

1 回答 1

7

如何使用正则表达式:

sub('(_[A-Z]){2}$', '', 'A_B_C_D')

其中数字2是您要删除的长度。

于 2013-02-01T15:13:09.587 回答