Друзі! Что то регулярка:
Pattern pattern=Pattern.compile("^world\\s|\\sworld\\s|\\sworld$|\\sworld\\.|\\sworld,|,world\\s");
валидатор стопорит
"Проверь, почему программа находит не все слова "world" в файле."
Не доходит и все!
Объясните, плз! Дякую!
package com.javarush.task.task19.task1907;
/*
Считаем слово
*/
import java.io.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String file1 = "C:/test/5.txt";
file1 = reader.readLine();
reader.close();
//Read data
BufferedReader reader2 = new BufferedReader(new FileReader(file1));
StringBuilder stringBuilder = new StringBuilder();
String line = null;
String ls = System.getProperty("line.separator");
while ((line = reader2.readLine()) != null) {
stringBuilder.append(line);
stringBuilder.append(ls);
}
// delete the last new line separator
stringBuilder.deleteCharAt(stringBuilder.length() - 1);
reader2.close();
String content = stringBuilder.toString();
// System.out.println(content);
// System.out.println("-------------");
//find word "world"
int count=0;
Pattern pattern=Pattern.compile("^world\\s|\\sworld\\s|\\sworld$");
Matcher matcher=pattern.matcher(content);
while (matcher.find())count++;
System.out.println(count);
}
}