javaScript手机号码校验工具类PhoneUtils详解

本文实例为大家分享了javaScript手机号码校验工具类PhoneUtils的具体代码,供大家参考,具体内容如下

//PhoneUtils命名空间
PhoneUtils = {
 phoneRegexs: {
  //中国电信号码段
  CHINA_TELECOM_PATTERN: /^(?:\+86)?1(?:33|53|7[37]|8[019])\d{8}$|^(?:\+86)?1700\d{7}$/,
  //中国联通号码段
  CHINA_UNICOM_PATTERN: /^(?:\+86)?1(?:3[0-2]|4[5]|5[56]|7[56]|8[56])\d{8}$|^(?:\+86)?170[7-9]\d{7}$/,
  //中国移动号码段
  CHINA_MOBILE_PATTERN: /^(?:\+86)?1(?:3[4-9]|4[7]|5[0-27-9]|7[8]|8[2-478])\d{8}$|^(?:\+86)?1705\d{7}$/,
  //电话座机号码段
  PHONE_CALL_PATTERN: /^(?:\d3,4|\d{3,4}-)?\d{7,8}(?:-\d{1,4})?$/,
  //手机号码
  PHONE_PATTERN: /^(?:\+86)?(?:13\d|14[57]|15[0-35-9]|17[35-8]|18\d)\d{8}$|^(?:\+86)?170[057-9]\d{7}$/,
  //手机号简单校验,不根据运营商分类
  PHONE_SIMPLE_PATTERN: /^(?:\+86)?1\d{10}$/
 },
 //电话号码
 isPhoneCallNum: function(input) {
  return this.phoneRegexs.PHONE_CALL_PATTERN.test(input);
 },
 //电信手机号码
 isChinaTelecomPhoneNum: function(input) {
  return this.phoneRegexs.CHINA_TELECOM_PATTERN.test(input);
 },
 //中国联通
 isChinaUnicomPhoneNum: function(input) {
  return this.phoneRegexs.CHINA_UNICOM_PATTERN.test(input);
 },
 //中国移动
 isChinaMobilePhoneNum: function(input) {
  return this.phoneRegexs.CHINA_MOBILE_PATTERN.test(input);
 },
 //手机号码
 isPhoneNum: function(input) {
  return this.phoneRegexs.PHONE_PATTERN.test(input);
 },
 //手机号码简单校验,只校验长度
 isPhoneNumBySize: function(input) {
  return this.phoneRegexs.PHONE_SIMPLE_PATTERN.test(input);
 }
};

在 http://www.cnblogs.com/yoyonow/ 有关于Python的更多介绍、

时间: 2024-07-30 17:00:44

javaScript手机号码校验工具类PhoneUtils详解的相关文章

hibernate工具类HibernateUtil详解

1.为什么要用hibernateUtil这个类,先看这段代码:  //加载配置文件信息默认为hiberna.cfg.xml,如果不是的话那么就在config()方法里面去解析他      Configuration config = new Configuration();      config.config();      //创建工厂      SessionFactory factory = config.bulidSessionFactory();      //得到session  

Java工具类ToStringStyle详解

1.ToStringStyleToStringBuilder是字符串格式控制类,主要供公共接口总是通过ToStringBuilder来实现,这些类的目的是用作单例模式,没有必要每次都初始化一个新样式,程序通常使用这个类中预定义的常量之一,另外StandardToStringStyle类可以用来设置各种设置,因此大多是时候没有必要实现它的子类:如果是必须的,那么子类可以像它要求的那样覆盖尽可能多的方法,每种对象类型(从long到int到object)都有它对应的输出类型,大多数有两种版本,详情和摘

【UML 建模】在线UML建模工具 ProcessOn 使用详解

总结 : -- 推荐理由 : 最近从 Windows 操作系统 转到 MAC 上, 正在看设计模式 和 重构, 找不到好用的 UML 工具, 因此在网上找了一款可以在线使用的 UML 工具, 用起来发现还不错, 推荐给大家; -- 工具地址 : https://www.processon.com/ ; 一. UML 使用流程 1. 创建 UML 图 创建 UML 图 : 点击主页的右上角的 "+" 按钮, 即可弹出创建页面; -- 创建按钮 : -- 创建页面 : -- 选择模板 :

JavaScript原生对象属性和方法详解——Array对象 转载

length 设置或返回 数组中元素的数目. 注意:设置 length 属性可改变数组的大小.如果设置的值比其当前值小,数组将被截断,其尾部的元素将丢失.如果设置的值比它的当前值大,数组将增大,新的元素被添加到数组的尾部,它们的值为 undefined.所以length不一定代表数组的元素个数. var arr = new Array(3) arr[0] = "John" arr[1] = "Andy" arr[2] = "Wendy" cons

Linux学习笔记--Linux文件管理类名利详解

Linux文件管理类命令详解 目录管理: ls.cd.pwd.mkdir.rmdir.tree 文件管理: touch.stat.file.rm.cp.mv.nano 日期管理: touch.clock.hwclock.cal 查看文本: cat.tac.more.less.head.tail cat:连接并显示 -n:在显示时显示每一行的行号 -E:在每行结束处显示 $ Ctrl+C:结束命令 分屏显示: more.less more:向后翻 less: q退出命令 head:查看前n行 ta

Java记录 -22- Java的基类Object详解

Java的基类Object详解 Java的JDK文档要经常查阅使用,最好查看英文的文档. java.lang.Object 类,java.lang包在使用的时候无需显示导入,编译时由编译器自动帮助我们导入. API(Application Programinga Interface),应用编程接口. Object obj = new Object(); System.out.println(obj); System.out.println(obj.toString()); 上面打印的两个内容一样

(总结)Web性能压力测试工具之WebBench详解

PS:在运维工作中,压力测试是一项很重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验.但是,在压力测试中存在一个共性,那就是压力测试的结果与实际负载结果不会完全相同,就算压力测试工作做的再好,也不能保证100%和线上性能指标相同.面对这些问题,我们只能尽量去想方设法去模拟.所以,压力测试非常有必要,有了这些数据,我们就能对自己做维护的平台做到心中有数. Webbench是知名的网站压力测试工具,它是由Lionbridge公司(h

halcon导出类---HDevWindowStack详解

在HDevelop中编写好的程序在导出时,Halcon会帮我们转换成我们需要的语言,比如C++.例:HDevelop中有如下语句需要导出: dev_close_window() Halcon导出成C++语言就成了如下语句: if (HDevWindowStack::IsOpen()) close_window(HDevWindowStack::Pop()); 了解MFC的应该不难理解,这两句在底层做了什么!下面让我来讲解一下,呵呵 首先来看看HDevWindowStack这个类,其实这个类很简单

JavaScript表单序列化的方法详解

本文介绍下,在javascript中实现表单序列化的方法,通过实例加深理解,有需要的朋友参考下吧. 在JavaScript中,可以利用表单字段的type属性,连同name和value属性一起实现对表单的序列. 首先,我们来了解下在表单提交期间,浏览器是怎样将数据发送给服务器的.对表单字段的名称和值进行URL编码,使用和号(&)分割.不发送禁用的表单字段.只发送勾选的复选框和单选按钮.不发送type为"reset"和"button"的按钮.多选择框中的每个选中