У меня есть лист с телефонными номерами, мне надо их привести в опредлеленный формат, но мой код не работает.
в чем можеть быть проблема?
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
List<String> number = new ArrayList<>();
number.add("+996555691100");
number.add("996555691100");
number.add("0555691100");
number.add("555691100");
number.add("+79259243307");
number.add("0079259243307");
number.add("89259243307");
number.add("+77077496188");
number.add("0077077496188");
number.add("87077496188");
number.stream().map(s -> s = fix_phone(s)).collect(Collectors.toList());
}
public String fix_phone(String phone) {
// Убрать все кроме цифр
phone = phone.replaceAll("[^\\d.]", "");
//Если номер начинается с 0, то удалить 0
if (phone.startsWith("0996")) phone = phone.replaceAll("^[0]", "");
// Если номер (РФ) начинается с 00, то удалить: 00
if (phone.startsWith("00")) phone = phone.replaceAll("^[0][0]", "");
//Если номер (РФ) начинается с 7, то заменить на 8
if (phone.startsWith("8")) phone = phone.replaceAll("^[8]", "7");
// Если номер содержит только 9 цифр, дабавить код страны 996
if (phone.matches("[\\d]{9}")) phone = "996" + phone;
// Заменить 0 на 996
if (phone.matches("0[\\d]{9}")) phone = phone.replaceAll("^[0]", "996");
return phone;
}
}
На выходе получается первоначальный лист без изминений, в чем может быть проблема?