使用gsub只保留我的字符串的第一部分

时间:2017-06-09 09:17:38

标签: r string gsub

在R中,我的字符串看起来像:

test <- 'ZYG11B|79699'

我只想保留'ZYG11B'

我最好的尝试:

gsub ("|.*$", "", test) # should replace everything after '|' by nothing

但返回

> [1] ""

我该怎么做?

2 个答案:

答案 0 :(得分:0)

它是受保护的字符,这意味着它应该用方括号括起来或用双斜线转义:

> gsub('[|].*$','', test)
[1] "ZYG11B"
> gsub('\\|.*$','', test)
[1] "ZYG11B"

答案 1 :(得分:0)

我们可以做到

library(stringr)
str_extract(test, "\\w+")
#[1] "ZYG11B"