Я пытаюсь использовать класс сканера для разбора всех слов в файле. Файл содержит обычный текст, но я хочу взять только слова, исключая все измышления.
Решение, которое я имею до сих пор, не является полным, но оно уже доставляет мне некоторые проблемы:
Scanner fileScan= new Scanner(file);
String word;
while(fileScan.hasNext("[^ ,!?.]+")){
word= fileScan.next();
this.addToIndex(word, filename);
}
Теперь, если я использую это в предложении типа "привет, меня зовут Марио!" он возвращает только "привет", "мой", "имя" и "есть". Это не соответствует "Марио!" (очевидно) но это не соответствует "Марио", как я думаю, что должно.
Можете ли вы объяснить, почему это так, и помочь мне найти лучшее решение, если оно у вас есть?
Спасибо