所以,除了修剪功能,一切都很好。我不知道它是否有效。實(shí)際上我正在使用 ArrayList 制作倒排索引。從文件中獲取行,拆分成單詞(標(biāo)記化)并刪除標(biāo)點(diǎn)符號(hào)。當(dāng)我談到刪除停用詞的部分時(shí),它與文件中提供的停用詞不匹配。我認(rèn)為這是因?yàn)?ArrayList 的每個(gè)索引的前導(dǎo)空間。停用詞列表:a, is, the, of, all, and, to, can, be, as, once, for, at, am, are, has, have, had, up, his, her, in, on, no, we, do我的策略:String [] TempArray = new String[word.size()];for (int i = 0; i < word.size(); i++) { word.set(i, word.get(i).toLowerCase()); word.set(i, word.get(i).replaceAll("[^a-zA-Z]", ""));} for (int i = 0; i < word.size(); i++) { TempArray[i] = word.get(i); TempArray[i] = TempArray[i].trim(); word.set(i, TempArray[i]); System.out.println(word.get(i));}輸出:[a, blunder, by, anton, chekhov, , an, illustration, for, the, story, a, blunder, by, the, author, anton, chekhov, portrait, of, ivan, lazhechnikov...]任何形式的建議將不勝感激!
2 回答
繁華開滿天機(jī)
TA貢獻(xiàn)1816條經(jīng)驗(yàn) 獲得超4個(gè)贊
怎么樣:
Arrays.stream(TempArray) .filter(s -> s != null) .map(String::trim) .toArray(String[]::new);
這將創(chuàng)建沒有前導(dǎo)或尾隨空格的新數(shù)組。
拉風(fēng)的咖菲貓
TA貢獻(xiàn)1995條經(jīng)驗(yàn) 獲得超2個(gè)贊
只是為了擴(kuò)展一點(diǎn)@Andronicus 的答案,這也會(huì)從結(jié)果數(shù)組中刪除空字符串。
Arrays.stream(TempArray) .filter(Objects::nonNull) .map(String::trim) .filter(!String::isEmpty) .toArray(String[]::new);
添加回答
舉報(bào)
0/150
提交
取消
