我尝试使用rstudio中的str_subset函数对具有5个或更多个元音字母的单词列表进行子集化。但是,无法理解。 这个问题有什么建议吗?
答案 0 :(得分:1)
由于您显然正在使用stringr,因此str_count函数将为您提供所需的服务。假设您的“单词列表”表示单个单词的字符向量,则应使用以下技巧。
testStrings <- c("Brillig", "slithey", "TOVES",
"Abominable", "EQUATION", "Multiplication", "aaagh")
VowelCount <- str_count(testString, pattern = "[AEIOUaeiou]")
OutputStrings <- testStrings[VowelCount >= 5]
方括号中的部分是一个正则表达式,可匹配英语中的任何大写字母或小写字母的元音。当然,其他语言可能会考虑不同的元音组。 如果要在base R中执行相同的操作,则应使用以下单行代码:
OutputStrings <- grep("([AEIOUaeiou].*){5,}", testStrings, value = TRUE)