Я написал следующее регулярное выражение, чтобы определить, имеет ли правильный номер национальный или международный номер телефона.
/ ^ (00 | 0 | [+]) ([-] [0-9] | [0-9]) {1,13} [0-9] /
Шаблон можно улучшить, разбив числа на код страны и номер телефона, но это пока не имеет значения.
Спасибо за вашу помощь
edit: вот код.Это не должно быть проблемой, потому что другие регулярные выражения работают хорошо.oChanged - это текстовый ввод.
function verification(oChanged, regex){
var val = $(oChanged).val();
var reg = new RegExp(regex);
if( !reg.test(val) ){
if( !$(oChanged).hasClass('notvalid') ){
$(oChanged).addClass('notvalid');
}
}else{
if( $(oChanged).hasClass('notvalid') ){
$(oChanged).removeClass('notvalid');
}
}
}
Я протестировал его с некоторыми тестерами регулярных выражений в интернете, и он совпал со всеми этими строками, но при его реализации он не совпадает.
должно работать, например, 004915773554660 +4915773554660 015773554660 0049157-7355-466-0