常见号码的正则表达式(⾝份证、邮箱、⼿机、IP地址等号码)
⾝份证号码的正则表达式及验证详解
结构和形式
1.号码的结构 - 公民⾝份号码是特征组合码,由⼗七位数字本体码和⼀位校验码组成。排列顺序从左⾄右依次为:六位数字地址码,⼋位数字出⽣⽇期码,三位数字顺序码和⼀位数字校验码。 2.地址码 表⽰编码对象常住户⼝所在县(县级市、旗、区)的⾏政区划代码,按GB/T2260的规定执⾏。 3.出⽣⽇期码 表⽰编码对象出⽣的年、⽉、⽇,按GB/T7408的规定执⾏,年、⽉、⽇代码之间不⽤分隔符。 4.顺序码 表⽰在同⼀地址码所标识的区域范围内,对同年、同⽉、同⽇出⽣的⼈编定的顺序号,顺序码的奇数分配给男性,偶数分配给⼥性。 5.校验码 根据前⾯⼗七位数字码,按照ISO 7064:1983.MOD 11-2校验码计算出来的检验码。
简版的匹配规则
1.1 分部规则 我们⾸先提出⽅案1,并分步做如下规则定义:
李若彤1.1.1 地址码规则: 地址码长6位 以数字1-9开头 后5位为0-9的数字 根据以上规则,写出地址码的正则表达式: /\d{5}/家长评语10条
1.1.2 年份码规则: 年份码长4位 以数字18,19或20,30开头 剩余两位为0-9的数字 根据以上规则,写出年份码的正则表达式:刘松仁主演的电视剧
/(18|19|20|(3\d))\d{2}/。如果想扩展可以⾃⼰添加
襄阳区号1.1.3 ⽉份码规则: ⽉份码长2位 第⼀位数字为0,第⼆位数字为1-9 或者第⼀位数字为1,第⼆位数字为0-2 根据以上规则,写出⽉份码的正则表达式: /((0[1-9])|(1[0-2]))/。
1.1.4 ⽇期码规则: ⽇期码长2位 第⼀位数字为0-2,第⼆位数字为1-9 或者是10,20,30,31 根据以上规则,写出⽇期码的正则表达式 :/(([0-2][1-9])|10|20|30|31)/。
1.1.5 顺序码规则: 顺序码长3位 顺序码是数字 根据以上规则,写出顺序码的正则表达式 :/\d{3}/。
张嘉译的妻子1.1.6 校验码规则: 校验码长1位 可以是数字,字母x或字母X 根据以上规则,写出校验码的正则表达式 :/[0-9Xx]/。
string str=@"^[1-9]\d{5}(18|19|20|(3\d))\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$";
邮箱的正则表达式
string=@"^([a-zA-Z0-9]+)@(([a-zA-z0-9]+)\.){1,2}[a-z]{2,3}$";
⼿机号码的正则表达式
string str =@"^((13[0-9])|(14[5,7])|(15[0-3,5-9])|(17[0,3,5-8])|(18[0-9])|166|198|199|(147))\d{8}$";
是否全部为中⽂
/** 是否全部为中⽂ */
string CHINESECHAR ="^[\u4e00-\u9fa5]+$";
ip地址的正则表达式
string ip =@"((25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))"
许志安承认出轨1. 1-9
发布评论