如何使用R将@ManuelaSchwesig@sigmargabriel@nahles
更改为@ManuelaSchwesig
,@sigmargabriel
,@nahles
?
答案 0 :(得分:2)
我们可以通过在小写字母和@字符的交汇处拆分来创建vector
字符串,从而尝试使用正则表达式。在这里,strsplit
的模式是正面的正则表达式((?<=[a-z])
),然后是正向正则表达式((?=@)
)。在字符串中,有两个匹配的实例,即g
和@
(Schweig @ sigma)之间以及(gabriel @ nahles)中的l
和@
之间的分割这些人物
strsplit(str1, "(?<=[a-z])(?=@)", perl = TRUE)[[1]]
#[1] "@ManuelaSchwesig" "@sigmargabriel" "@nahles"
如果我们需要将其保留为单个字符串,目标是插入,
gsub("([a-z])@", "\\1,@", str1)
#[1] "@ManuelaSchwesig,@sigmargabriel,@nahles"
str1 <- "@ManuelaSchwesig@sigmargabriel@nahles"