GNU R:如何在字符串的每个单词的开头和结尾删除重复的字符?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GNU R:如何在字符串的每个单词的开头和结尾删除重复的字符?相关的知识,希望对你有一定的参考价值。
在GNU R中,我需要在字符串的每个单词的开头和结尾删除重复的字符。
如果我有输入
str <- "Tthis iss a splendiddd ddayyy"
输出应该是
"This is a splendid day"
有人知道怎么做吗?非常感谢你提前!
有了最好的祝福,埃里克
答案
第一个gsub
删除重复的前导字符,第二个删除尾随。第一个正则表达式匹配单词边界,后跟任何字符,后跟可能重复的相同字符。然后它将匹配替换为捕获组匹配的字符,即括号内的部分。大写或小写被忽略。第二个类似于尾随重复项。
ss <- gsub("\\b(.)\\1+", "\\1", str, ignore.case = TRUE, perl = TRUE)
gsub("(.)\\1+\\b", "\\1", ss)
## [1] "This is a splendid day"
以上是关于GNU R:如何在字符串的每个单词的开头和结尾删除重复的字符?的主要内容,如果未能解决你的问题,请参考以下文章
如何编写一个函数,将句子中每个单词开头的所有辅音字符串转换为“r”,直到它变成元音?