Ниже код сам
Почему мое решение ене проходит, хотя вроде всё одно и тоже, но просто всё объединил в одни скобки, а в правильном решении такой вариант
return (telNumber.matches("^\\+(\\d[()]?){12}$") || telNumber.matches("^([()]?\\d){10}$"))&& telNumber.matches("^(\\+)?(\\d+)?(\\(\\d{3}\\))?\\d+$");
package com.javarush.task.task22.task2212;
/*
Проверка номера телефона
*/
public class Solution {
public static boolean checkTelNumber(String telNumber) {
return telNumber.matches("(^\\+(\\d[()]?){12}$)|(^([()]?\\d){10}$) | (^(\\+)?(\\d+)?(\\(\\d{3}\\))?\\d+$)");
}
public static void main(String[] args) {
System.out.println(checkTelNumber("+380501234567"));
System.out.println(checkTelNumber("+38(050)1234567"));
System.out.println(checkTelNumber("(050)1234567"));
System.out.println(checkTelNumber("0(501)234567"));
System.out.println(checkTelNumber("+38)050(1234567"));
System.out.println(checkTelNumber("+38(050)123-45-67"));
System.out.println(checkTelNumber("050ххх4567"));
System.out.println(checkTelNumber("050123456"));
System.out.println(checkTelNumber("(0)501234567"));
//System.out.println(checkTelNumber());
}
}