2017-06-16 24 views
1

我想獲取以$`GPE開頭的字符串中單詞的矢量。 這是我的嘗試:獲取以模式開始的字符串中的單詞矢量 - R

grep(pattern = "$`GPE", x = GPE_string, value = TRUE) 

但是它返回:character(0)

+0

一個例子'GPE_string'會很有幫助。 – Matt

+0

好的,我確實發現GPE_string不是一個字符串。這是一個S4(不知道那是甚麼)。但是現在有沒有人有這樣的信息解決方案? –

+0

我發現我在找的是ls(GPE_string) –

回答

1

你可以用做str_extract_allstringr

library(stringr) 
str_extract_all(GPE_string, "(\\$`GPE.+?)\\b") 

說明:

  • 圖案中$需要與\\
  • 進行轉義210
  • 封入(...)的部分將被提取
  • \\b意味着字邊界,並.+?意味着一個或多個字符

str_extract_all結果是在輸入向量中的每個串向量的列表, 。

0

你需要轉義字符。

嘗試

grep(pattern="\$\`GPE", x=GPE_string, value=TRUE) 
+0

嗯。錯誤:'\ $'是字符串中無法識別的轉義,從「」\ $「開始 –

0

如果你只想找以 「$`GPE」 開始的話,你可以這樣做:

GPE_string[startsWith(GPE_string, "$`GPE")] 

因此,例如,

> GPE_string<- c("$`GPE_Hello", "$`GPEWorld", "Hello", "World") 
> GPE_string 
[1] "$`GPE_Hello" "$`GPEWorld" "Hello"  "World"  
> GPE_string[startsWith(GPE_string, "$`GPE")] 
[1] "$`GPE_Hello" "$`GPEWorld" 
相關問題