R - erro ao separar texto de uma string usando a condição regex e ifelse
O que eu quero fazer é retirar o texto de uma string sempre que houver um ":".
Suponha que meu texto contenha:
text$Text[[3]] = "There is a horror movie running in the iNox theater. : Can we go?"
E o que eu quero criar um quadro de dados que:
Col1 Col2
There is a horror movie running in the iNox theater. Can we go?
Estou tentando usar o seguinte:
df = data.frame(Text = strsplit(text$Text[[3]],
ifelse(":", ":", text$Text[[3]]))[[1]], stringsAsFactors = F)
dat3$Text[[3]]
porque o texto está na linha no. 3 do texto $ Text.
Mas o acimaifelse()
lógica não funcionou. Aqui eu estava tentando usar a condição ifelse, de modo que, se houver um ":" no texto, use ":", caso contrário, use o texto completo como está. Portanto, significa que, se não houver ":", o resultado será algo:
text$Text[[3]] = "Hi Mom, You there. Can I go to Jimmy's house?"
Col1 Col2
Hi Mom, You there. Can I go to Jimmy's house? NA
Como fazer isso corretamente?
Observe que há um problema:
E se houver dois ":" no texto?Eu gostaria de considerar apenas o ":" que está dentro das duas primeiras linhas e não no restante do texto?