我正在使用R中的数据并且有一个与字符串相关的问题。 如果我有一个矢量(比如书),
books <- c('123 Book1 331','51 Book2','Book3 69','Book4')
我想分割以数字开头的字符串并保留其余部分,否则保持不变。 我想以如下所示的方式提取信息:
[1] "Book1 331" "Book2" "Book3 69" "Book4"
我必须在R中使用什么包?什么功能?
答案 0 :(得分:2)
您可以简单地将gsub
与您自己的正则表达式一起使用。 E.g:
books <- c('123 Book1 331','51 Book2','Book3 69','Book4')
gsub("^.*?([a-zA-Z]+.+)", "\\1", books)
[1] "Book1 331" "Book2" "Book3 69" "Book4"
答案 1 :(得分:2)
以下是使用sub
的另一个变体,它不需要捕获组:
books <- c('123 Book1 331','51 Book2','Book3 69','Book4')
sub("^\\d+\\s+", "", books)
[1] "Book1 331" "Book2" "Book3 69" "Book4"