Форум программистов, компьютерный форум, киберфорум
JavaScript: RegExp
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
-1 / 0 / 1
Регистрация: 16.09.2012
Сообщений: 130

Регулярное выражение для поиска мобильного телефона на странице

31.07.2016, 10:36. Показов 3150. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте уважаемые пользователи cyberforum! В данный момент столкнулся с проблемой неправильной работы моей регулярки. Как вставить тег span в регулярку и произвести замену по скобке? Прилагаю саму регулярку и тестовые данные.
Регулярное выражение (для удобства разбил на строки с комментариями)
Кликните здесь для просмотра всего текста
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
/
({\+?7|8})       // 7 или +7 или 8
\s?              // " " ?
\(?              // "(" ?
([9]{1}\d{2})    // Три цифры, первая 9
\)?              // ")" ?
{\s|-}?          // " " или "-"
(\d{3})          // Три цифры
{\s|-}?          // " " или "-"
(\d{2})          // Две цифры
{\s|-}?          // " " или "-"
(\d{2})          // Две цифры
/gi

Тестовые данные
Кликните здесь для просмотра всего текста
+7 (900) 111-22-33
8 900 111-22-33
+7 900 1112233
+7(900)111-2233
+7 900 1112233
+7(900)111-22-33
8 (900) 111-22-33
8-900-111-22-33
+7 <span>(900)</span> 1112233
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
31.07.2016, 10:36
Ответы с готовыми решениями:

Регулярное выражение для поиска номера телефона
Подскажите пример регулярного выражения для поиска номера телефона.

Выражение для проверки ввода мобильного телефона в РФ
Как написать регулярное выражение для проверки ввода мобильного телефона в РФ. Учитывать написание 8 и +7.

Регулярное выражение для телефона
Доброго времени суток. Мне нужно регулярное выражение, чтобы перебирать операторы телефонов, к примеру, есть несколько кодов 099,...

3
 Аватар для Resume
143 / 133 / 69
Регистрация: 08.11.2013
Сообщений: 767
Записей в блоге: 5
31.07.2016, 13:39
Может значение тэга span вставить в регулярку?
0
-1 / 0 / 1
Регистрация: 16.09.2012
Сообщений: 130
31.07.2016, 14:20  [ТС]
Значение всегда разное, т.е. не подходит для решения
0
Ренегат
Эксперт HTML/CSS
 Аватар для BANO
1740 / 1085 / 386
Регистрация: 06.08.2014
Сообщений: 5,203
Записей в блоге: 1
03.08.2016, 21:21

Не по теме:

Конечно регулярка у вас ооочень бредовая...
Особенно меня приколола запись [9]{1}. Наверное это верх бредовости этой регулярки...


Что я могу предложить... Если данные - строка, то от туда можно удалить все ненужные знаки, аля скобки, тире и пробелы. Дальше скакать от формата выхода. Будет очень удобно.
Если же это html, то почему бы не воспользоваться .querySelector()?

Добавлено через 9 минут
Мне кажется, что я не понял задачу... В общем отвечаю на то, что понял.песочница
JavaScript
1
2
3
4
5
6
7
var phone = prompt("Введите номер телефона");
phone = phone.replace(/[\s\-\)\(]/g, ""); // привели к общему формату (+79103216458)
phone1 = phone.replace(/(\+?7|8)(9\d{2})(\d{3})(\d{4})/, "$1 ($2) $3-$4"); // привели к другому формату (+7 (910) 321-6458)
alert(phone1);
// вариант №2, выделение номера оператора тегом
phone2 = phone.replace(/(\+?7|8)(9\d{2})(\d{3})(\d{4})/, "$1 <span>($2)</span> $3-$4");
alert(phone2);
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.08.2016, 21:21
Помогаю со студенческими работами здесь

Регулярное выражение для номера телефона
Здравствуйте. Подскажите, пожалуйста, как можно преобразовать строку 8 (999) 999-99-99 в tel:+79999999999 через регулярное выражение? При...

Регулярное выражение для номеров телефона
Ребят, всем привет! Пожалуйста, помогите, кто знает как) Нужно спарсить номера на странице, любой, я сделал всё, но работает это для...

Регулярное выражение для ввода номера телефона
Всем привет, подскажите пожалуйста регулярное выражение, которое разрешает только цифры и знак + впереди номера(&quot;+&quot; не...

Регулярное выражение для проверки ввода телефона?
Как найти ответ на мой вопрос в ответах форума? Наверняка он уже обсуждался. Или подскажите, пожалуйста, код.

Неверное регулярное выражение для номера телефона
using System; using System.Text.RegularExpressions; namespace Dictionary { /// &lt;summary&gt; /// Компания. ///...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru