中国工信.三大运营商号段

正则匹配

SELECTt.cellphone_num,CASEWHEN TRIM(t.cellphone_num) REGEXP '^13[5-9]|^134[0-8]|^14[78]|^15[012789]|^172|^178|^170[356]|^18[23478]|^198|^1440' and length(TRIM(t.cellphone_num)) = 11 THEN '中国移动'WHEN TRIM(t.cellphone_num) REGEXP '^13[0-2]|^145|^146|^15[56]|^166|^17[156]|^170[4789]|^18[56]' and length(TRIM(t.cellphone_num)) = 11 THEN '中国联通'WHEN TRIM(t.cellphone_num) REGEXP '^133|^1410|^149|^153|^170[012]|^17[347]|^18[019]|19[139]' and length(TRIM(t.cellphone_num)) = 11 THEN '中国电信'WHEN TRIM(t.cellphone_num) REGEXP '^1349' and length(TRIM(t.cellphone_num)) = 11 THEN '中国卫星电话'ELSE '未知运营商'END AS provider
FROMtemp tt

正则匹配测试

SELECT"17002341234",CASEWHEN TRIM("17002341234") REGEXP '^13[5-9]|^134[0-8]|^14[78]|^15[012789]|^172|^178|^170[356]|^18[23478]|^198|^1440' and length(TRIM("17002341234")) = 11 THEN '中国移动'WHEN TRIM("17002341234") REGEXP '^13[0-2]|^145|^146|^15[56]|^166|^17[156]|^170[4789]|^18[56]' and length(TRIM("17002341234")) = 11 THEN '中国联通'WHEN TRIM("17002341234") REGEXP '^133|^1410|^149|^153|^170[012]|^17[347]|^18[019]|19[139]' and length(TRIM("17002341234")) = 11 THEN '中国电信'WHEN TRIM("17002341234") REGEXP '^1349' and length(TRIM("17002341234")) = 11 THEN '中国卫星电话'ELSE '未知运营商'END AS provider;create table dw.dim_phone_segment_regexp(
vendor_id string comment '运营商,1:移动,2:联通,3:电信,4:卫星电话,5:其他',
vendor_name string comment '运营商名称',
vendor_regexp string comment '运营商号段正则表达式',
bi_update_datetime string comment "更新时间"
) TBLPROPERTIES ("comment"="手机号码段正则表达式 by zhangjiqiang");insert into table dw.dim_phone_segment_regexp values
(1,"中国移动", "^13[5-9]|^134[0-8]|^14[78]|^15[012789]|^172|^178|^170[356]|^18[23478]|^198|^1440", "2019-09-16 18:02:47"),
(2,"中国联通", "^13[0-2]|^145|^146|^15[56]|^166|^17[156]|^170[4789]|^18[56]", "2019-09-16 18:02:47"),
(3,"中国电信", "^133|^1410|^149|^153|^170[012]|^17[347]|^18[019]|19[139]", "2019-09-16 18:02:47"),
(4,"中国卫星电话", "^1349", "2019-09-16 18:02:47")
;

运营商号码段维表

表结构

-- hive
create table test.dim_mobile_phone_segment(
phone_num_segment string comment '手机号码段',
vendor_name string comment '运营商'
) TBLPROPERTIES ("comment"="手机号码段 by zhangjiqiang");

初始化数据

init date: 2019-09-16

insert into table test.dim_mobile_phone_segment values
(133,"中国电信"),
(149,"中国电信"),
(153,"中国电信"),
(173,"中国电信"),
(177,"中国电信"),
(180,"中国电信"),
(181,"中国电信"),
(189,"中国电信"),
(199,"中国电信"),
(130,"中国联通"),
(131,"中国联通"),
(132,"中国联通"),
(145,"中国联通"),
(155,"中国联通"),
(156,"中国联通"),
(166,"中国联通"),
(171,"中国联通"),
(175,"中国联通"),
(176,"中国联通"),
(185,"中国联通"),
(186,"中国联通"),
(166,"中国联通"),
(145,"中国联通"),
(1340,"中国移动"),
(1341,"中国移动"),
(1342,"中国移动"),
(1343,"中国移动"),
(1344,"中国移动"),
(1345,"中国移动"),
(1346,"中国移动"),
(1347,"中国移动"),
(1348,"中国移动"),
(135,"中国移动"),
(136,"中国移动"),
(137,"中国移动"),
(138,"中国移动"),
(139,"中国移动"),
(147,"中国移动"),
(150,"中国移动"),
(151,"中国移动"),
(152,"中国移动"),
(157,"中国移动"),
(158,"中国移动"),
(159,"中国移动"),
(172,"中国移动"),
(178,"中国移动"),
(182,"中国移动"),
(183,"中国移动"),
(184,"中国移动"),
(187,"中国移动"),
(188,"中国移动"),
(198,"中国移动"),
(147,"中国移动"),
(1700,"中国电信_虚拟运营商"),
(1701,"中国电信_虚拟运营商"),
(1702,"中国电信_虚拟运营商"),
(1703,"中国移动_虚拟运营商"),
(1705,"中国移动_虚拟运营商"),
(1706,"中国移动_虚拟运营商"),
(1704,"中国联通_虚拟运营商"),
(1707,"中国联通_虚拟运营商"),
(1708,"中国联通_虚拟运营商"),
(1709,"中国联通_虚拟运营商"),
(171,"中国联通_虚拟运营商"),
(1349,"卫星通信");

转载于:https://www.cnblogs.com/myblog1900/p/11539947.html

手机号码段:中国工信.三大运营商号段-update2019-09相关推荐

  1. 中国三大运营商号段范围

    中国电信:133.153.189(天翼3G-CDMA2000) 中国移动:134.135.136.137.138.139.159.158.188(G3-TD-SCDMA) 中国联通:130.131.1 ...

  2. 国内三大手机运营商号段

    目前我国开放的手机号段达到27种.其中,移动16种,联通7种,电信4种. 目前有27种手机号段 移动:134.135.136.137.138.139.147.150.151.152.157.158.1 ...

  3. 2020年正则表达式匹配三大运营商手机号码,附各运营商号段

    号段: 移动号段 134,135,136,137,138,139,147,148,150,151,152,157,158,159,172,178,182,183,184,187,188,198,197 ...

  4. 13.14.4 文本文件到电子表格。python编程快速上手--让繁琐工作自动化 第2版。【美】阿尔·斯维加特 Al Sweigart 著 王海鹏 译 中国工信出版集团 人民邮电出版社

    编写一个程序来读取几个文本文件的内容,并将这些内容插入一个电子表格,每行写入一行文本.第一个文本文件的行将写入列a中的单元格,第二个文本文件中的行将写入列b中的单元格,以此类推. 利用file对象的r ...

  5. java 手机号运营商号段正则匹配(长期更新)

    import com.cq.mysmscommon.enums.SpTypeEn;import java.util.regex.Pattern;public class MobileOperator ...

  6. 大学计算机实践教程中国工信出版社答案,中国石油大学出版社第八版计算机文化基础实验教程习题答案...

    中国石油大学出版社 第八版 计算机文化基础实验教程答案 第一章 一.单项选择题 1.A 2.A 3.A 4.A 5.C 6.D 7.C 8.B 9.C 10.B 11.B 12.D 13.A 14.C ...

  7. 汇编语言:程序如下,编写code段中的代码,将a段和b段中的数据一次相加,结果放到c段中

    assume cs:code,ds:a,ds:b,ds:codea segmentdb 1,2,3,4,5,6,7,8a endsb segmentdb 1,2,3,4,5,6,7,8b endsc ...

  8. 汇编语言 用push指令将a段中的前8个字形数据,逆序存储到b段中

    题目要求 用push指令将a段中的前8个字形数据,逆序存储到b段中 执行过程 push之前 a段数据 (b段数据)栈空间↓ 不要问我为什么不全是0,我并不知道,只是找出了一些规律.详见我的前一篇博客 ...

  9. 曝光三大运营商群发垃圾短信 与广告公司合作牟利

    8月底,移动手机用户小赵收到广告垃圾短信,发信的手机号码怎么也打不通.据记者调查,此类垃圾短信来源不一,有的来自群发器,更高级的来自移动.联通.电信三大运营商.他们不止为发送垃圾短信提供便利,还为相关 ...

最新文章

  1. 将Doc或者Docx文档处理成html的代码逻辑;统计word中的字数,段数,句数,读取word中文档内容的代码逻辑...
  2. python更新pip失败-新手求助, python 升级 pip 失败
  3. 语法:MySQL中INSERT IGNORE INTO和REPLACE INTO的使用
  4. 梯度下降和随机梯度下降为什么能下降?
  5. 大话设计模式(十三 有了门面,程序员的程序会更加体面!)
  6. 定了!2021年数据中心《能源管理师》考试,全国报名入口!
  7. Oracle 用户 对 表空间 配额(quota ) 说明
  8. 使用Zipkin和Sleuth进行SpringBoot微服务跟踪
  9. Linux下nm和ldd 命令
  10. Oracle 权限管理
  11. 点击按钮返回上一个页面_零基础跟老陈一起学WordPress 《第四课》用WP半小时建一个商业网站...
  12. 简单好用的网站压力测试工具
  13. 密码学中的各类密码汇总(一)
  14. 产品开发之小步快跑,快速迭代
  15. vander范德蒙德行列式
  16. Mybatis 报错Mapper method ‘xxx‘ has an unsupported return type,解决办法
  17. linux 可道云_Aria2+KodExplorer可道云实现离线下载
  18. java 得到汉字的拼音,Java获取汉字的拼音
  19. 用 Python 给女友做了个可能会被打死的七夕礼物 !
  20. linux蓝牙日志,linux蓝牙

热门文章

  1. 8-26-GLI锁与普通互斥锁、死锁问题、递归锁、信号量、Event事件、并发的tcp通信、进程池线程池
  2. 从数据到价值,DataOps精益数据运营概述
  3. CImage实现图片缩放
  4. 17万字 JUC 看这一篇就够了(一) (精华)
  5. 浅析服务机器人自主定位导航技术(一)
  6. 触动精灵学习笔记(1)
  7. 汽车网关MCU芯片选型
  8. 关于Could not find a version that satisfies the requirement报错的解决方案
  9. There is no getter for property named 'XXX' in class 'aaa.bbb.ccc'(终极骚操作的解决方法)
  10. 电子电路基础——笔记