字符串如下所示:
s <- "12N10-3A 12N10-3A-1 12N10-3A-2 YB10L-A2"
我可以得到第二个字符串以外的字符串。
gsub("\\s.*","",s) #12N10-3A
gsub(".*\\s","",s) #YB10L-A2
gsub(".*\\s.*\\s(.*).*\\s(.*)","\\1",s) #12N10-3A-2
如何从s获取第二个字符串,每行代码的简短方法是什么?我尝试了在regex101.com
中学到的知识答案 0 :(得分:1)
只需使用strsplit
:
items <- strsplit(s, "\\s+")[[1]]
如果要访问最后一项,则只需使用:
items[4]
[1] "YB10L-A2"
如果您真的想使用sub
隔离最后一项,那么这是一种方法:
sub(".*\\s+", "", s)
答案 1 :(得分:1)
我们可以使用stri_extract_last
中的stringi
library(stringi)
stri_extract_last(s, regex = '\\S+')
#[1] "YB10L-A2"
或使用word
中的stringr
library(stringr)
word(s, 4)
#[1] "YB10L-A2"