Ответ 1
.
в символьной группе []
является буквальным .
, у него нет специального значения "ничего". [.-]?
означает "точка или дефис или ничего", так как вся группа становится необязательной с ?
.
Регулярное выражение имеет вид
(\d{3,4}[.-]?)+
образец текста
707-7019-789
Мой прогресс пока
( )+ a capturing group, capturing one or more
\d{3,4} digit, in quantities 3 or 4
[.-]? dot (or something) or hyphen, in quantities zero or one <-- this is the part I'm interested in
По моему мнению, это должно соответствовать 3 или 4-значному числу, за которым следует точка (или что-нибудь, поскольку точка соответствует чему-либо) или дефис, связанный в группе один или несколько раз. Почему это не соответствует
707+123-4567
то?
.
в символьной группе []
является буквальным .
, у него нет специального значения "ничего". [.-]?
означает "точка или дефис или ничего", так как вся группа становится необязательной с ?
.
Скобки удаляют функциональность точки. Скобки означают "Диапазон" / "Класс символов". Таким образом, вы говорите "Выбрать" из списка/диапазона/символьного класса. Вы не говорите, что выбираете из списка "все" - (что-то есть обычное значение.)
[.-]?
Что это означает буквально:
[.-]
.
и -
буквально.?