Я ищу простое регулярное выражение, которое будет проверять 10-значный номер телефона. Я хотел бы убедиться, что число составляет ровно 10 цифр, никаких букв, дефис или парнеров и что первые две цифры не начинаются с 0 или 1. Может ли кто-нибудь помочь?
Проверка 10-значного номера телефона
Ответ 1
/[2-9] {2}\d {8}/
Ответ 2
^[2-9]{2}[0-9]{8}$
Я считаю [0-9] лучше читать, чем \d, особенно учитывая предыдущие [2-9]
The ^ и $гарантируют, что входная строка состоит ТОЛЬКО из этих 8 символов - в противном случае не гарантируется, что входная строка не больше - то есть "12345678901" будет соответствовать регулярному выражению без этих двух символов - хотя это 11 символов и начинается с 1!
Ответ 3
Как отметил Рэндал, этот вопрос не согласуется с тем, как номера телефонов отформатированы в Северной Америке (хотя OP заявила, что первые две цифры не начинаются с 0 или 1). Лучшим регулярным выражением для телефонов Северной Америки будет:
^ [2-9] {1} [0-9] {9} $
Например, код района Вашингтона (202). NYC имеет код города (212). Северный Нью-Джерси имеет (201).
Но более точно, NANP имеет множество правил, поскольку это связано с тем, что разрешено в коде города и обмене (первые шесть цифр). Это регулярное выражение должно по-прежнему охватывать большинство случаев. https://en.wikipedia.org/wiki/North_American_Numbering_Plan
Ответ 4
Это регулярное выражение script может помочь. Я по существу перечеркиваю любые символы "пунктуации", включая ведущий 1-, а затем проверяет, что это 10 цифр.
Дополнительная часть, которую вам, вероятно, не нужна, - это форматирование до 000-000-0000
formatPhone = function() {
var phone = this.value;
phone = phone.replace(/^1(|-|\(|\)|\.| )*|-|\(|\)|\.| /g, '');
if(phone.length === 10) {
this.value = phone.slice(0,3) + '-' + phone.slice(3,6) + '-' + phone.slice(6,10);
}
}
Ответ 5
Телефонные номера будут иметь 10 цифр, и он начнется с 7,8 и 9
[RegularExpression ( "^ ([07] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0- 9] [0-9] | 8 [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [ 0-9] | 9 [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9 ]) $", ErrorMessage = "Введите действительный номер мобильного телефона" )]
ссылка: http://www.regular-expressions.info/numericranges.html