powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Стационарный или мобильный телефон?
23 сообщений из 23, страница 1 из 1
Стационарный или мобильный телефон?
    #38802292
Фотография Виталий Гробштейн
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть большая база организаций России, Украины, Белоруссии, Казахстана. Для каждой организации указано несколько (до 5) номеров телефонов. Задача: выявить все мобильные и перенести их в отдельное поле.
Внутренний голос мне подсказывает, что я не первый столкнулся с этой проблемой, и у кого-нибудь должна найтись готовая процедура или отлаженный алгоритм.
Помогите! Время...
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38802294
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кодов операторов обычно немного и их можно вынести в справочник.

http://indexmain.ru/mobile/ru
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38802317
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38802429
Фотография Виталий Гробштейн
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да с Российскими операторами вообще нет проблем: все их коды начинаются с 9, а в сетях фиксированной связи этого не может быть.
Вот в Казахстане все сложнее, да и на Украине довольно путано.
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38802446
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Виталий ГробштейнЗадача: выявить все мобильные и перенести их в отдельное поле.
Внутренний голос мне подсказывает,
Внутренний голос мне подсказывает, что у мобильных операторов встречаются прямые номера, и выявить их будет весьма затруднительно.
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38802467
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Виталий ГробштейнДа с Российскими операторами вообще нет проблем: все их коды начинаются с 9
У меня есть мобилка с городским номером...
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38802479
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не знаю как в России но в Украине мобильные операторы предлагают пакеты фиксированной связи
и интернета. Это по сути услуга проводной городской связи. Ну... технически неотличимо.

И сам по себе вопрос - выявить все мобильные и перенести их в отдельное поле звучит странно.

Надёжнее всего - прозвонить и спросить владельца о типе устройства.
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38802581
Фотография Виталий Гробштейн
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonНе знаю как в России но в Украине мобильные операторы предлагают пакеты фиксированной связи
и интернета. Это по сути услуга проводной городской связи. Ну... технически неотличимо.

И сам по себе вопрос - выявить все мобильные и перенести их в отдельное поле звучит странно.

Надёжнее всего - прозвонить и спросить владельца о типе устройства.
Звонки на т.наз. "прямые" номера тарифицируются как звонки на телефоны фиксированной связи. Поэтому их "мобильность" в моей задаче не имеет никакого значения.
А вот советовать прозвонить примерно 50000 номеров я заказчику не буду.
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38802588
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Виталий ГробштейнЗвонки на т.наз. "прямые" номера тарифицируются как звонки на телефоны фиксированной связи.
Если вопрос в этом, то не майтесь фигнёй, а обращайтесь к соответствующему оператору связи и просите у него таблицу "какие префиксы как тарифицируются".
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38802599
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerВиталий ГробштейнЗвонки на т.наз. "прямые" номера тарифицируются как звонки на телефоны фиксированной связи.
Если вопрос в этом, то не майтесь фигнёй, а обращайтесь к соответствующему оператору связи и просите у него таблицу "какие префиксы как тарифицируются".
Кстати да. В форуме - это попытка получить бесплатную инфу которая обычно платная.
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38802805
Фотография Виталий Гробштейн
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonКстати да. В форуме - это попытка получить бесплатную инфу которая обычно платная.
Инфа о кодах мобильных операторов общедоступна и совершенно бесплатна. Гугол мне все нужное выдал, и функцию проверки я написал.
Была мечта сэкономить пару часов времени, да не судьба...
Спасибо всем ответившим.
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38802856
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Виталий Гробштейн, сэкономьте другим. Опубликуйте решение.
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38803066
Фотография Виталий Гробштейн
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAВиталий Гробштейн, сэкономьте другим. Опубликуйте решение.

Вот оно:

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
// Возвр. True, если данный номер - мобильный
function TfrmImport.IsMobile(Ph : string) : Boolean;
var S : string;
begin
  Result := False;
  if Length(Ph) < 10 then
    Exit;

  Ph := StringReplace(Ph, '-', '', [rfReplaceAll]);
  Ph := StringReplace(Ph, '(', '', [rfReplaceAll]);
  Ph := StringReplace(Ph, ')', '', [rfReplaceAll]);
  Ph := StringReplace(Ph, ' ', '', [rfReplaceAll]);

  if StrLeft(Ph, 2) = '+7' then
    Ph := Copy(Ph, 3, 10)
  else if StrLeft(Ph, 1) = '8' then
    Ph := Copy(Ph, 2, 10);

  if StrLeft(Ph, 1) = '8' then   // бесплатный звонок и т.п.
    Exit;

  if  CurCountryNm = 'РОССИЯ' then begin
    Result := (StrLeft(Ph, 1) = '9');
    Exit;

  end else if CurCountryNm = 'БЕЛОРУССИЯ'  then begin
    S := StrLeft(Ph, 3);
    if (S = '044') or (S = '033') or (S = '025') or (S = '029') then begin
      Result := True;
      Exit;
    end;

  end else if CurCountryNm = 'КАЗАХСТАН' then begin
    S := Copy(Ph, 3);
    if S[1] <> '7' then
      Exit;

    if (S = '700') or (S = '701') or (S = '702') or (S = '705') or (S = '707') or
       (S = '712') or (S = '713') or (S = '717') or (S = '718') or (S = '721') or
       (S = '725') or (S = '726') or (S = '727') or (S = '777') then begin
      Result := True;
    end;
    Exit;

  end else if CurCountryNm = 'УКРАИНА' 0 then begin
    S := Copy(Ph, 3);

    if (S = '039') or (S = '050') or (S = '063') or (S = '066') or (S = '067') or
       (S = '068') or ((S >= '091') and (S <= '099')) then begin
      Result := True;
    end;
    Exit;
  end;

end;
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38805708
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
Виталий Гробштейн
Код: pascal
1.
БЕЛОРУССИЯ

БЕЛАРУСЬ


Надо как-то проверять количество цифр.
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38805917
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eNoseВиталий Гробштейн
Код: pascal
1.
БЕЛОРУССИЯ

БЕЛАРУСЬПо-русски Белоруссия.
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38805942
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eNoseНадо как-то проверять количество цифр.
и с 8-й тоньше разбираться
+37529xxxyyyy
и 8029xxxyyyy
в Белоруссии это один и тот же номер

то что не Россия определяется по коду зоны- код зоны не может в России с нуля начинаться
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38805963
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гробштейну в помощь.

http://en.wikipedia.org/wiki/Radix_tree

Надеюсь разберётся что к чему.
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38807814
m7m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Виталий ГробштейнskyANAВиталий Гробштейн, сэкономьте другим. Опубликуйте решение.



Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
  end else if CurCountryNm = 'УКРАИНА' 0 then begin
    S := Copy(Ph, 3);

    if (S = '039') or (S = '050') or (S = '063') or (S = '066') or (S = '067') or
       (S = '068') or ((S >= '091') and (S <= '099')) then begin
      Result := True;
    end;
    Exit;
  end;

end;


ну еще 097 и 098
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38817692
andr_andrey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
m7m,
на 2008 год было:
+ 380 39 xxx-xx-xx - Golden Telecom
+ 380 50 xxx-xx-xx - МТС
+ 380 63 xxx-xx-xx - life:)
+ 380 66 xxx-xx-xx - Jeans (МТС)
+ 380 67 xxx-xx-xx - Киевстар
+ 380 68 xxx-xx-xx - Beeline
+ 380 91 xxx-xx-xx - Укртелеком UMTS
+ 380 92 xxx-xx-xx - PEOPLEnet
+ 380 93 xxx-xx-xx - life:)
+ 380 94 xxx-xx-xx - Интертелеком
+ 380 95 xxx-xx-xx - МТС
+ 380 95 0xx-xx-xx - МТС
+ 380 95 1xx-xx-xx - МТС
+ 380 95 2xx-xx-xx - МТС
+ 380 95 3xx-xx-xx - МТС
+ 380 95 4xx-xx-xx - МТС
+ 380 95 5xx-xx-xx - МТС
+ 380 95 6xx-xx-xx - МТС
+ 380 95 7xx-xx-xx - Jeans (МТС)
+ 380 95 8xx-xx-xx - МТС
+ 380 95 9xx-xx-xx - Jeans (МТС)
+ 380 96 xxx-xx-xx - Киевстар
+ 380 96 0xx-xx-xx - Киевстар
+ 380 96 1xx-xx-xx - Киевстар
+ 380 96 2xx-xx-xx - Киевстар
+ 380 96 3xx-xx-xx - Киевстар
+ 380 96 4xx-xx-xx - Киевстар
+ 380 96 5xx-xx-xx - Киевстар
+ 380 96 6xx-xx-xx - DJUICE (Киевстар)
+ 380 96 7xx-xx-xx - DJUICE (Киевстар)
+ 380 96 8xx-xx-xx - DJUICE (Киевстар)
+ 380 96 9xx-xx-xx - DJUICE (Киевстар)
+ 380 97 xxx-xx-xx - Киевстар
+ 380 97 0xx-xx-xx - ???возможно Мобилыч??? (Киевстар)
+ 380 97 1xx-xx-xx - DJUICE (Киевстар)
+ 380 97 2xx-xx-xx - Киевстар
+ 380 97 3xx-xx-xx - Киевстар
+ 380 97 4xx-xx-xx - Киевстар
+ 380 97 5xx-xx-xx - Киевстар
+ 380 97 6xx-xx-xx - DJUICE (Киевстар)
+ 380 97 7xx-xx-xx - DJUICE (Киевстар)
+ 380 97 8xx-xx-xx - DJUICE (Киевстар)
+ 380 97 9xx-xx-xx - DJUICE (Киевстар)
+ 380 98 xxx-xx-xx - Киевстар
+ 380 98 0xx-xx-xx - Мобилыч (Киевстар)
+ 380 98 1xx-xx-xx - Киевстар
+ 380 98 2xx-xx-xx - Киевстар
+ 380 98 3xx-xx-xx - Киевстар
+ 380 98 4xx-xx-xx - Киевстар
+ 380 98 5xx-xx-xx - Киевстар
+ 380 98 6xx-xx-xx - DJUICE (Киевстар)
+ 380 98 7xx-xx-xx - DJUICE (Киевстар)
+ 380 98 8xx-xx-xx - DJUICE (Киевстар)
+ 380 98 9xx-xx-xx - DJUICE (Киевстар)
+ 380 99 xxx-xx-xx - МТС
+ 380 99 0xx-xx-xx - Jeans (МТС)
+ 380 99 1xx-xx-xx - Экотел (МТС)
+ 380 99 2xx-xx-xx - Jeans (МТС)
+ 380 99 3xx-xx-xx - Jeans (МТС)
+ 380 99 4xx-xx-xx - Jeans (МТС)
+ 380 99 5xx-xx-xx - Jeans (МТС)
+ 380 99 6xx-xx-xx - Экотел (МТС)
+ 380 99 7xx-xx-xx - Jeans (МТС)
+ 380 99 8xx-xx-xx - Jeans (МТС)
+ 380 99 9xx-xx-xx - Jeans (МТС)
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38818193
Barlone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
m7mВиталий Гробштейнпропущено...

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
  end else if CurCountryNm = 'УКРАИНА' 0 then begin
    S := Copy(Ph, 3);

    if (S = '039') or (S = '050') or (S = '063') or (S = '066') or (S = '067') or
       (S = '068') or ((S >= '091') and (S <= '099')) then begin
      Result := True;
    end;
    Exit;
  end;

end;


ну еще 097 и 098
И уже успело устареть - http://www.companion.ua/articles/content?id=292350
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38818200
Barlone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38818539
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Возникла мысль написать БД "на JavaClasses". Вобщем в статик конструктор эти все справочники.
И для каждой страны свой пакет.
...
Рейтинг: 0 / 0
Стационарный или мобильный телефон?
    #38818915
Фотография Виталий Гробштейн
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BarloneИ по Казахстану с Белоруссией откуда сведения?
https://ru.wikipedia.org/wiki/Телефонный_план_нумерации_Белоруссии
https://ru.wikipedia.org/wiki/Телефонный_план_нумерации_Казахстана

Сайты с информацией о телефонных кодах Гугол находит сотнями. Информация на них практически одинаковая, но в очень разных форматах, чтобы разобраться пришлось посидеть...
Украинские 097 и 098 мой алгоритм учитывает, ты просто невнимательно смотрел. Новый 073 не учитывает, но сейчас это уже проблема заказчика, а не моя. Я решал очень конкретную задачу в условиях дефицита времени. Мой код весьма далек от идеала, но как основа для дальнейшей работы может кому-нибудь пригодится.
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Стационарный или мобильный телефон?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]