我有一个由 _
分隔的字符串,我想去掉最后两个元素。例如,从 A_B_C_D
我想返回 A_B
,从 A_B_C_D_E
我想要 A_B_C
。我已经尝试过 str_split_fixed
中的 stringr
:
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="_")
最佳答案
如何使用正则表达式:
sub('(_[A-Z]){2}$', '', 'A_B_C_D')
其中数字
2
是您要删除的长度。关于r - 如何通过分隔符拆分 r 中的字符串并丢弃最后两项?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14649192/