我目前正在做一些事情,应该计算从推文文件中给出的单词。我正在用空格替换只有两个字符短的特殊字符和单词。因此,稍后我可以得到双空格,我将在下一行替换它。变量“words”是一个HashMap,其中存储了单词的对应频率。
tweet = tweet.replaceAll("[^\\d\\p{L} ]", " ");
tweet = tweet.replaceAll("\\b.{1,2}\\b", " ");
tweet = tweet.replaceAll("\\s{2,}", " ");
tweet = tweet.toLowerCase();
for (String word : tweet.split(" ")){
if (words.containsKey(word)){
words.put(word, words.get(word)+1);
} else {
words.put(word, 1);
我的问题是,生成的单词列表及其频率包含空字符串。大多数时候,这是最常见的字符串。我不知道这是从哪里来的以及如何摆脱它,希望有人可以帮助我。