Верхний регистр учел, знаки препинания тоже, world в начале строки, world конце строки. Как еще можно написать это слово?
Валя: Проверь, почему программа находит не все слова "world" в файле.
package com.javarush.task.task19.task1907;
import java.io.*;
import java.util.ArrayList;
import java.util.Scanner;
//C:\source2.txt
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader r = new BufferedReader(new InputStreamReader(System.in));
FileReader reader = new FileReader(r.readLine());
BufferedReader reader1 = new BufferedReader(reader);
int wordsCount = 0;
String slovo = "";
String line = reader1.readLine();
while (line != null){
line = new StringBuilder(line).insert(0, " ") // Добавляем пробел в начало строки, если "world" в начале, и условие в 30 стр сработало
.insert(line.length() + 1, " ") // Добавляем пробел в конец, если "world" в конце, и условие в 30 стр сработало
.toString(); // Присваиваем полученную строку переменной line
line = line.replaceAll("\\p{Punct}", " "); // Заменяем все знаки препинания на пробелы, для условия в 30 стр
for (char c : line.toCharArray()){
slovo += c;
if (slovo.toLowerCase().contains(" world ")) {
slovo = "";
wordsCount++;
}
}
line = reader1.readLine(); // новая строка
}
System.out.println(wordsCount);
r.close();
reader.close();
reader1.close();
}
}