Как вставить разделитель (запятую) в символ? - PullRequest
0 голосов
/ 28 мая 2018

Как я могу изменить @ManuelaSchwesig@sigmargabriel@nahles на @ManuelaSchwesig, @sigmargabriel, @nahles, используя R?

1 Ответ

0 голосов
/ 28 мая 2018

Мы могли бы попытаться найти регулярное выражение, разделив соединение букв из нижнего регистра и символа @, чтобы создать vector строк.Здесь, образец для strsplit представляет собой положительный взгляд на регулярные выражения ((?<=[a-z])), за которым следует положительный взгляд на регулярные выражения ((?=@)).В строке есть два случая, когда она совпадает, то есть между g и @ (Schweig @ sigma) и l и @ в (gabriel @ nahles) и разделяется между этими символами

strsplit(str1, "(?<=[a-z])(?=@)", perl = TRUE)[[1]]
#[1] "@ManuelaSchwesig" "@sigmargabriel"   "@nahles" 

Если нам нужно сохранить ее как одну строку, и цель состоит в том, чтобы вставить ,

gsub("([a-z])@", "\\1,@", str1)
#[1] "@ManuelaSchwesig,@sigmargabriel,@nahles"

data

str1 <-  "@ManuelaSchwesig@sigmargabriel@nahles"
...