R:gsub在捕获组之间插入空格

时间:2016-02-17 17:11:08

标签: regex r

我拼命想在捕获组之间插入空格。我天真的做法是

c = c("WesternSaharaRegion", "ColumbiaState", "OneTwoThreeFourFiveSix")
gsub("(.+[a-z])([A-Z].+)","\\1 \\2", clist, perl=T)

只在最后两个大写字母之间插入一个空格。使用

gsub("(?=([a-z][A-Z]))"," ", c, perl = T)

并不完全是因为它是一个单字符移位的版本

"Wester nSahar aRegion"       "Columbi aState"              "On eTw oThre eFou rFiv eSix"

我如何优雅接收

    "Western Sahara Region"       "Columbia State"              "One Two Three Four Five Six"
遗憾的是,

strsplit()不保留捕获组:/

1 个答案:

答案 0 :(得分:2)

我们可以使用正则表达式外观

importlib

或使用捕获组

testcases.bar_test