如何从r中的文本中删除连续的大写字符?
例如,我有一个文本如何从r中的文本中删除连续的大写字符?,r,text-mining,R,Text Mining,例如,我有一个文本 a <- "This IS A SAMple sentence TMP" 我该怎么做?有更简单的方法吗?比什么更简单?您尝试过什么?我尝试过运行for循环,在连续位置或更多位置查找大写字母,但这变得太复杂了,因为也可能有两个以上的连续大写字母。熟悉正则表达式-请参见?正则表达式,例如。,www.regular-expressions.info-它们可以很好地解决各种问题。答案很好。也许对这些组成部分的解释可以作为补充。首先,gsub在a中全局查找任何具有大写字母的字符
a <- "This IS A SAMple sentence TMP"
我该怎么做?有更简单的方法吗?比什么更简单?您尝试过什么?我尝试过运行for循环,在连续位置或更多位置查找大写字母,但这变得太复杂了,因为也可能有两个以上的连续大写字母。熟悉正则表达式-请参见
?正则表达式,例如。,www.regular-expressions.info-它们可以很好地解决各种问题。答案很好。也许对这些组成部分的解释可以作为补充。首先,gsub在a中全局查找任何具有大写字母的字符串——这是字符类[a-Z]——在一行中两次或多次——这是量词{2,}。如果量词是{2,3},它将查找一行中的两个或三个;如果{2},它将在一行中查找正好两个。当gsub找到这些匹配项时,它会用空格替换它们,就像用“”一样。最后,str_trim将删除结尾开始处的空格。
library(stringr)
str_trim(gsub("[A-Z]{2,}","",a))
[1] "This A ple sentence"
library(stringr)
str_trim(gsub("[A-Z]{2,}","",a))
[1] "This A ple sentence"