Задачу решил, все получилось.
Один вопрос остался, почему РАБОТАЕТ код на проверку количества цифр в строке в таком виде.
Pattern part4 = Pattern.compile("\\d");
Matcher match4 = part4.matcher(telNumber);
while (match4.find()) {
count++;
}
System.out.println("count=" + count);
if (count != 12) return false; //если чисел не 10
Хотя там первым знаком идет + и возможны скобки с тире.
Я недопонимаю, что именно делает метод find().