無關字符我有以下一句:去除句子
**I**%%AABB%&&**WANT**%%AO%**ONLY**%RA%$**THESE**
我想僅提取被定義爲相關的那些話:I, WANT, ONLY, THESE, WORDS, NEXT, STEP
。所有其他字符(數字,字母,特殊)應從句子中刪除。
在這種情況下,所產生的一句話是:
I WANT ONLY THESE.
我有成千上萬這樣的詩句中,每個人都有自己的一套有用的單詞之間的字符。有沒有一種有效的方法來擺脫這些R?
無關字符我有以下一句:去除句子
**I**%%AABB%&&**WANT**%%AO%**ONLY**%RA%$**THESE**
我想僅提取被定義爲相關的那些話:I, WANT, ONLY, THESE, WORDS, NEXT, STEP
。所有其他字符(數字,字母,特殊)應從句子中刪除。
在這種情況下,所產生的一句話是:
I WANT ONLY THESE.
我有成千上萬這樣的詩句中,每個人都有自己的一套有用的單詞之間的字符。有沒有一種有效的方法來擺脫這些R?
string <- "**I**%%AABB%&&**WANT**%%AO%**ONLY**%RA%$**THESE**"
regmatches(string, gregexpr("I|WANT|ONLY|THESE|WORDS|NEXT|STEP",
string))
[[1]]
[1] "I" "WANT" "ONLY" "THESE"
編輯:如果你想,然後轉換回一句,說我店叫matches
在對象比賽:
sentencify <- function(sentence){
paste0(paste(sentence, collapse=" "), ".")
}
lapply(matched, sentencify)
[[1]]
[1] "I WANT ONLY THESE."
一般來說,你可以用'paste(。,sep =「|」) 。 – Arun
非常好。我不熟悉'regmatches'。 +1 – A5C1D2H2I1M1N2O1R2T1
這裏是否需要'perl = TRUE'?換句話說,這裏有什麼用處? – Arun
這是一種方法,假設你有一個清單來檢查反對:
> mystring2 <- "**I**%%AABB%&&**WANT**%%AO%**ONLY**%RA%$**THESE**"
> mystring2
[1] "**I**%%AABB%&&**WANT**%%AO%**ONLY**%RA%$**THESE**"
> temp <- strsplit(mystring2, "[^a-zA-Z]")[[1]]
> myWords <- c("I", "WANT", "ONLY", "THESE", "WORDS", "NEXT", "STEP")
> temp[temp %in% myWords]
[1] "I" "WANT" "ONLY" "THESE"
如果沒有相關的單詞的列表,讓hunspell
自動做到這一點:)
> system(paste('echo "', gsub('\\W', ' ', '**I**%%AABB%&&**WANT**%%AO%**ONLY**%RA%$**THESE**'), '" | hunspell -G -d en_US'))
I
WANT
ONLY
RA
THESE
是的......我有一個相關的單詞列表...我想要刪除所有其他單詞 – Ravi