Привет! Решала задачу, прошерстила интернет, на некоторые вопросы не нашла ответ. Хотела бы разобраться в них прежде чем смотреть правильное решение. По возможности подскажите, пожалуйста, что почитать, чтобы найти ответы.
ТЗ задачи:
1) если номер начинается с '+', то он содержит 12 цифр
2) если номер начинается с цифры или открывающей скобки, то он содержит 10 цифр
3) может содержать 1 пару скобок '(' и ')'
4) скобки (если они есть) внутри содержат четко 3 цифры
5) номер может содержать только цифры, '+', '(' и ')'
6) номер заканчивается на цифру
1) Как проверить, что номер начинается либо с открывающей скобки, либо с числа так, чтобы учитывать, что всего в подходящей строке может быть только 10 чисел? Написала такое выражение: ^[\d(]\d{10}, но если номер начинается с цифры, то в подходящем номере программа будет ждать 11 цифр 2) Как реализовать требование, что скобки могут быть в любой позиции строки (кроме последней)? Предварительно эту часть записала так: ^[\d(]\(\d{3}\)\d{10}, но тут четко стоит позиция скобок (скобка на первом индексе, затем три числа, затем закрывающая скобка) 3) Можно ли в одном выражении проверить, что могут быть скобки с тремя цифрами внутри (на любой позиции) и их может вовсе не быть так, чтобы учитывалось, что всего нужно 10 цифр?