2015-10-16 109 views
0

我正在尝试做一些相对简单的事情,但没有任何我尝试过的工作。我搜索了我的任务,我似乎无法让我的代码工作。R:从字符串中提取字母仅在第一次出现后一次

我试图提取字母只有他们第一次出现在下面的句子:

text <- 'i ride my bike' 

我曾尝试下面的代码:

gsub('([[:alpha:]])\\1{1}', '\\1', text) 

,并没有达到我想。我想要的最终结果是:

i r d e m y b k 

我只希望第一次出现这封信。我在Google上发现的东西更多的是将“hellllllo”缩减为“hello”,但我希望“helo”。我希望我有道理!

谢谢大家!

+0

'C(唯一的(as.data.frame(strsplit(文本, “”))))[[1]] '给你后面的东西,包括第一个空间。 – Badger

+2

或者也许:'独特(strsplit(text,“”)[[1]])' –

+0

我知道必须有一个更简单的方法! – Badger

回答

1

基于獾的和Gabor的回答和移除与grep第一空间:

grep(" ",unique(strsplit(text,"")[[1]]),value = TRUE, invert = TRUE) 
[1] "i" "r" "d" "e" "m" "y" "b" "k" 
+0

Lapointe:谢谢! – mapleleaf

相关问题