删除r中引号外的空格

时间:2016-02-21 19:53:32

标签: r

使用R重新排列simpsons名称以遵循名字,姓氏格式,但名称之间有大的空格,是否可以删除引用名称之外的空格?

library(stringr)

simpsons <- c("Moe Syzlak", "Burns, C. Montgomery", "Rev. Timothy Lovejoy", "Ned Flanders", "Simpson, Homer", "Dr. Julius Hibbert")

reorder <- sapply(sapply(str_split(simpsons, ","), str_trim),rev)

for (i in 1:length(name) ) {
    splitname[i]<- paste(unlist(splitname[i]), collapse = " ")
}

splitname <- unlist(splitname)

1 个答案:

答案 0 :(得分:0)

如果我们需要重新排列名字后跟姓氏,我们可以使用sub。我们捕获的一个或多个字符不是组中的,,后跟,后跟0或更多空格(\\s*),捕获一个或多个不是a的字符,作为第二组,并在替换中反向反向引用以获得输出。

sub("([^,]+),\\s*([^,]+)", "\\2 \\1", simpsons)
#[1] "Moe Syzlak"           "C. Montgomery Burns"  "Rev. Timothy Lovejoy" "Ned Flanders"         "Homer Simpson"        "Dr. Julius Hibbert"