Помогите, пожалуйста! Как мне обозначить ВСЕ знаки препинания? Валидатор ругается, мол "Проверь, почему программа находит не все слова "world" в файле".
Сплитю в 27-ой строчке.
UPD Проблема была со считыванием. Нужно было использовать не readLine(), a read()
Спасибо всем за помощь!
package com.javarush.task.task19.task1907;
/*
Считаем слово
*/
import java.io.*;
public class Solution {
public static void main(String[] args) {
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
BufferedReader fileReader = new BufferedReader(new FileReader(reader.readLine()));
StringBuilder builder = new StringBuilder();
while (true) {
String s = fileReader.readLine();
if (s == null) {
break;
}
builder.append(s);
}
// String[] words = builder.toString().split("[,.!?:;()\\-\" ]\n \t");
String [] words = builder.toString().split("\\pP|\n|\r\n|\\s");
int count = 0;
for (int i = 0; i < words.length; i++) {
if (words[i].equals("world") ) {
count++;
}
}
BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(System.out));
writer.write("" + count);
fileReader.close();
writer.close();
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}