2012-11-04 237 views
4

我正在研究一種數據挖掘算法,我需要使用多個詞來標記字符串。我有一個包含所有停用詞的單獨文件。我需要做的是通過作爲分隔符的任何單詞(stopword)來標記輸入字符串。 例如。
如果文件中包含禁用詞爲
一個


在java中使用多個分隔符分割字符串


和輸入字符串來是
「計算機集羣由一組工作鬆散連接的計算機一起「
輸出爲
計算機集羣包括
集合
級鬆散連接的計算機
一起工作

檢查,對所有禁用詞串遞歸會很耗時?有沒有什麼好的方法呢?

+2

正則表達式可能會有幫助。 – fonZ

+0

注意:你的意思是「迭代」而不是「遞歸」 – stark

+0

我認爲這個:https://code.google.com/p/guava-libraries/wiki/StringsExplained可能會幫助你。但它不解決你的問題。 – user902691

回答

7

構建形式

delim1|delim2|delim3 

的正則表達式,然後使用Stringsplit()方法由任何分隔符的文本分開。

爲了構建正則表達式,讀取每個分隔符,並在追加到您構建的正則表達式之前將它傳遞給Pattern.quote。這會讓你的分隔符也使用正則表達式元字符。

+0

感謝哥們。有效。 – Ansh

相關問題