从R

时间:2018-03-08 15:13:16

标签: r gsub stringr

我想知道从一长串包含非字母字符的单词中跳过所有单词的最快最强大的方法是什么?

输入应如下所示:

words = c('one', 'two', 'three,', 'four', '.five', 'others\'', 'ma-ny')

结果,新列表应为:

newWords = c('one', 'two', 'four')

gsub() tidyverse stringr包中的内容?非常感谢!

2 个答案:

答案 0 :(得分:4)

我们可以使用grep指定模式,从开头([[:alpha:]]+)到结尾(^)只有一个或多个字母($)字符串

grep("^[[:alpha:]]+$", words, value = TRUE)
#[1] "one"  "two"  "four"

答案 1 :(得分:3)

使用基础R中的grep作为akun建议,或者您可以使用包stringr

library(stringr)
str_subset(words, "^[:alpha:]+$")