Все как обычно, работают даже два варианта решения, но валидатор упорно не пропускает.
Подскажите...
package com.javarush.task.task19.task1924;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/*
Замена чисел
*/
public class Solution {
public static Map<Integer, String> map = new HashMap<Integer, String>();
static {
map.put(0, "ноль");
map.put(1, "один");
map.put(2, "два");
map.put(3, "три");
map.put(4, "четыре");
map.put(5, "пять");
map.put(6, "шесть");
map.put(7, "семь");
map.put(8, "восемь");
map.put(9, "девять");
map.put(10, "десять");
map.put(11, "одиннадцать");
map.put(12, "двенадцать");
}
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String fileName = reader.readLine();
reader.close();
Pattern pattern = Pattern.compile("\\b[1-9]+\\b");
BufferedReader bufferedReader = new BufferedReader(new FileReader(fileName));
while (bufferedReader.ready()) {
String s = bufferedReader.readLine();
Matcher matcher = pattern.matcher(s);
while (matcher.find()) {
Integer i = Integer.parseInt(matcher.group());
s = s.replaceFirst(matcher.group(), map.get(i));
}
System.out.println(s);
}
// String[] buffer = bufferedReader.readLine().split(" ");
// for (String b : buffer) {
// Matcher matcher = pattern.matcher(b);
// while (matcher.find()) {
// Integer i = Integer.parseInt(b);
// b = map.get(i);
// }
// ;
// }
// System.out.println(buffer.toString());
//
// }
bufferedReader.close();
}
}
//C:\Users\Катя\IdeaProjects\JavaRushTasks\2.JavaCore\src\com\javarush\task\task19\task1924\file