当前位置: 首页 > news >正文

js怎么判断是否为手机号?js格式校验方法

数据格式正确与否是表单填写不可避免的一个流程,现整理一些较为常用的信息格式校验方法。

判断是否为手机号码

// 判断是否为手机号码
function isPhoneNumber(phone) {return /^[1]\d{10}$/.test(phone)
}

判断是否为移动手机号

function isChinaMobilePhone(phone) {var reg = new RegExp(/^(13[456789]|147|15[012789]|178|18[23478]|198)[0-9]{8}$/)return reg.test(phone)
}

判断是否为座机

function isTelephone(phone) {return /^[0][0-9]{2,3}[-]?[0-9]{6,9}$/.test(phone)
}

身份证校验

// 身份证校验 简单校验
function checkIDCardSimple(code) {return /^([0-9a-zA-Z]{15}|[0-9a-zA-Z]{18})$/.test(code)
}// 身份证校验 加强校验
function checkIDCard(code) {// 校验非空if (!code) {return false}// 校验长度if (code.length != 15 && code.length != 18) {return false}// 定义判别用户身份证号的正则表达式(15位或者18位,最后一位可以为字母)//假设18位身份证号码:41000119910101123X  410001 19910101 123X//^开头//[1-9] 第一位1-9中的一个      4//\\d{5} 五位数字           10001(前六位省市县地区)//(18|19|20)                19(现阶段可能取值范围18xx-20xx年)//\\d{2}                    91(年份)//((0[1-9])|(10|11|12))     01(月份)//(([0-2][1-9])|10|20|30|31)01(日期)//\\d{3} 三位数字            123(第十七位奇数代表男,偶数代表女)//[0-9Xx] 0123456789Xx其中的一个 X(第十八位为校验值)//$结尾//假设15位身份证号码:410001910101123  410001 910101 123//^开头//[1-9] 第一位1-9中的一个      4//\\d{5} 五位数字           10001(前六位省市县地区)//\\d{2}                    91(年份)//((0[1-9])|(10|11|12))     01(月份)//(([0-2][1-9])|10|20|30|31)01(日期)//\\d{3} 三位数字            123(第十五位奇数代表男,偶数代表女),15位身份证不含X//$结尾var reg = new RegExp(/(^[1-9]\d{5}(18|19|20)\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$)|(^[1-9]\d{5}\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}$)/)var matches = reg.test(code)if (matches) {// 15位的身份证,直接返回合法if (code.length == 15) {return true}// 18位的进一步校验try {// TODO:} catch(e) {console.error(e)return false}}return matches
}

身份证校验15位

function checkIDCard15(code) {return /^([0-9a-zA-Z]{15})$/.test(code)
}

身份证校验18位

function checkIDCard18() {return /^([0-9a-zA-Z]{18})$/.test(code)
}

户口簿校验

// 户口簿校验 9位数字
function checkHuKouBook(code) {return /^\d{9}$/.test(code)
}

护照校验

// 护照校验
function checkPassport(code) {return /^((1[45]\d{7})|(G\d{8})|(P\d{7})|(S\d{7,8}))?$/.test(code)
}

军官证校验

// 军官证校验
// 规则:军/兵/士/文/职/广/(其他中文) + "字第" + 4到8位字母或数字 + "号"
// 示例:军字第2002488号, 士字第P011816X号
function checkOfficerCard(code) {return /^[\u4E00-\u9FA5](字第)([0-9a-zA-Z]{4,8})(号?)$/.test(code)
}

驾驶证校验

// 驾驶证校验 12位数字
function checkDriveCard(code) {return /^\d{12}$/.test(code)
}

台湾居民来往大陆通行证

// 台湾省居民来往大陆通行证
// 规则:新版8位或18位数字,旧版10位数字 + 英文字母
// 示例:12345678 或 1234567890B
function checkTwCard(code) {return /^\d{8}|^[a-zA-Z0-9]{10}|^\d{18}$/.test(code)
}

港澳居民来往内地通行证

// 港澳居民来往内地通行证
// 规则:H/M + 10位或6位数字
// 示例:H1234567890
function checkHMCard(code) {return /^[HMhm]{1}([0-9]{10}|[0-9]{8})$/.test(code)
}
http://www.lryc.cn/news/358944.html

相关文章:

  • 深入理解Java中的方法重载:让代码更灵活的秘籍
  • 鸿蒙ArkTS声明式开发:跨平台支持列表【显隐控制】 通用属性
  • 每日一题——Java编程练习题
  • java编辑器中如何调试程序?
  • 第四范式Q1业务进展:驰而不息 用科技锻造不朽价值
  • SpringBoot整合Kafka的快速使用教程
  • 低边驱动与高边驱动
  • 【C++】入门(二):引用、内联、auto
  • 编程学习 (C规划) 6 {24_4_18} 七 ( 简单扫雷游戏)
  • 【AI】llama-fs的 安装与运行
  • Android NDK系列(五)内存监控
  • 软件设计师,下午题 ——试题六
  • 《Kubernetes部署篇:基于麒麟V10+ARM64架构部署harbor v2.4.0镜像仓库》
  • 远程工作/线上兼职网站整理(数字游民友好)
  • elasticsearch7.15实现用户输入自动补全
  • 掌握正则表达式的力量:全方位解析PCRE的基础与进阶技能
  • FastFM库,一款强大神奇的Python系统分析预测的工具
  • R语言绘图 --- 饼状图(Biorplot 开发日志 --- 2)
  • 用于日常任务的实用 Python 脚本
  • 7-Zip是什么呢
  • Satellite Stereo Pipeline学习
  • linux-gpio
  • C# 代码配置的艺术
  • 268 基于matlab的模拟双滑块连杆机构运动
  • 进口铝合金电动隔膜泵
  • G4 - 可控手势生成 CGAN
  • 使用 DuckDuckGo API 实现多种搜索功能
  • 【DrissionPage爬虫库 1】两种模式分别爬取Gitee开源项目
  • leetcode 115.不同的子序列
  • 二叉树的顺序实现-堆