Как создать регулярные выражения для стационарных телефонов и мобильных телефонов для проверки конкретных телефонных кодов? - PullRequest
3 голосов
/ 18 марта 2019

Задача:

Создание регулярных выражений для стационарных и мобильных телефонных номеров Израиля с конкретными кодами проверки

Конкретные телефонные коды:

02,03,04,08,09,050,051,052,053,054,055,056,058,059,072,074,076,077,078,079

Проверка введенного телефона не начинается с "0" или "1".

Длина телефонного номера всегда 7 для мобильных и стационарных телефонных номеров.

Уже создайте reg exp для этой задачи:

/^(02|03|04|06|08|09|072|074|076|077|078|079|050|051|052|053|054|055|056|058|059)((?:(?![1,0]{1}))\d{7})$/

Вы можете перейти по ссылке для проверки:

https://regex101.com/r/GRTns5/1/

Как оптимизировать или другое решение?

Ответы [ 2 ]

1 голос
/ 18 марта 2019

Вы можете немного упростить:

^0(?:[234689]|5[0-689]|7[246789])(?![01])(\d{7})$

Демо

1 голос
/ 18 марта 2019

Здесь можно оптимизировать только первую группу с телефонными кодами:

    ^(0(?:5[0-689]|7[246-9]|[2-4689]))((?:(?![1,0]{1}))\d{7})$

Демо

...