首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何删除R中没有大写的单词?

如何删除R中没有大写的单词?
EN

Stack Overflow用户
提问于 2016-05-03 19:49:29
回答 2查看 1.5K关注 0票数 3

我正在用R进行文本分析,有没有办法用tmstringi删除大写中的所有单词?

如果我有这样的东西

代码语言:javascript
复制
Albert Einstein went to the store and saw his friend Nikola Tesla ... + 200 pags

转换成

代码语言:javascript
复制
Albert Einstein Nikola Tesla

诚挚的问候

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-05-03 19:56:19

只需使用grep和正则表达式:

代码语言:javascript
复制
words <- 'Albert Einstein went to the store and saw his friend Nikola Tesla'

# split to vector of individual words
vec <- unlist(strsplit(words, ' '))
# just the capitalized ones
caps <- grep('^[A-Z]', vec, value = T)
# assemble back to a single string, if you want
paste(caps, collapse=' ')
票数 6
EN

Stack Overflow用户

发布于 2016-05-03 19:58:59

您可以使用简单的正则表达式删除这些单词。

代码语言:javascript
复制
gsub("\\b[a-z]+\\s+", "", x)
# [1] "Albert Einstein Nikola Tesla"

这只是在寻找一个单词边界>小写字母>它后面的所有字母>它后面的所有空格并移除它。

虽然在使用don't这样的单词时,您需要更复杂的正则表达式。有点像

代码语言:javascript
复制
x <- "if Albert Einstein didn't see his friend Nikola Tesla leavin'"
gsub("\\b[a-z][^ ]*(\\s+)?", "", x)
# [1] "Albert Einstein Nikola Tesla "
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37013143

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档