如何使用 R 删除小写标记?

问题描述

我正在使用 R/Quanteda 并且我正在尝试仅使用大写单词制作 wordcloud。 txt 来自 ABNT 格式的参考书目,因此我将只保留作者的姓氏。 任何提示?坦克!

解决方法

基础 R

string <- "lowercase UPPERCASE more lower case UPPER  1143 + 40 = !!!"

gsub(" {2,}"," ",# replace 2 or more consecutive spaces with one space
  gsub("[^A-Z ]","",string) # remove anything that's not a space or an uppercase letter
)
#> [1] " UPPERCASE UPPER "

reprex package (v2.0.0) 于 2021 年 7 月 2 日创建

Stringr 包

require(stringr)
#> Loading required package: stringr

string <- "lowercase UPPERCASE more lower case UPPER  1143 + 40 = !!!"

str_squish( # remove excess whitespace
  str_remove_all(string,"[^[:UPPER:] ]") #remove everything except uppecase and spaces
)
#> [1] "UPPERCASE UPPER"

reprex package (v2.0.0) 于 2021 年 7 月 2 日创建

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...