2014-02-04 16 views
1

Я пытаюсь создать регулярное выражение матча для номера телефона в JQuery, именно для этого форматаREGEX для номера телефона

+ XXX XXX XXX XXX, где X является числом.

Я создал этот

var regEx = '[+]{1}[\d]{3}[ ]{1}[\d]{3}[ ]{1}[\d]{3}[ ]{1}[\d]{3}'; 
     var val = jQuery.trim($('#phone_number').val()) 
     if (val.match(regEx)) { 
      alert('good'); 
     } 
     else 
      alert('bad'); 
     } 

Любая помощь будет полезна.

+0

пожалуйста, смотрите по ссылке. он имеет почти все комбинации регулярных выражений. http://stackoverflow.com/questions/123559/a-comprehensive-regex-for-phone-number-validation?rq=1 – Sp0T

+0

Я не хочу, чтобы все они .. я хочу именно этот –

ответ

1

У вас почти есть это, но есть несколько «лишних», и вам не хватает якорей, если номер телефона не является частью большей строки (и это для проверки).

^\+\d{3} \d{3} \d{3} \d{3}$ 
+0

изменен на var regEx = '^ \ + \ d {3} \ d {3} \ d {3} \ d {3} $'; теперь я получаю сообщение об ошибке с недопустимым регулярным выражением –

+1

Ну, вы используете его как строку ... Заверните его в '/' вместо – ohaal

0

Вы могли бы использовать:

var regEx = /^\+\d{3}(?: \d{3}){3}$/; 
Смежные вопросы