使用正则表达式删除R中独立字符之间的空格

时间:2016-04-13 17:33:07

标签: regex r

我在R中有一个字符向量,我想使用正则表达式来提取某个模式。我想找到连续两个或多个独立字母的事件。这可以在较长的字符串内或较长的字符串的开头发生。然后我想删除这些字母之间的空格。如果在两个独立字母之间没有出现,我想保留空间。以下是我正在寻找的几个例子。

如果载体是:

v <- c("A B C", "ABC D E", "A BC D E FH", "A B CDE")

“A B C”应该成为“ABC”

“ABC D E”应成为“ABC DE”

“BC D E FH”应成为“A BC DE FH”

“A B CDE”应成为“AB CDE”

因此,删除间距后得到的矢量是:

c("ABC", "ABC DE", "A BC DE FH", "AB CDE")

向量中没有标点符号,所有字母都大写。

我已经做的就是找到它们:

grep("^[A-Z] [A-Z] ", v)
grep(" [A-Z] [A-Z] ", v)

但是,如果可能的话,我想在一个步骤中执行此操作,并考虑字符串可能以独立字符结尾。我不确定如何使用gsub仅删除字符之间的空格。

0 个答案:

没有答案