HTML的js中⼿机号,⾝份证号等正则表达式表⽰
⽂章⽬录
1. 正则表达式 — 规则
正则表达式(Regular Expression)是⼀种⽂本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符")。
正则表达式使⽤单个字符串来描述、匹配⼀系列匹配某个句法规则的字符串。
正则表达式是繁琐的,但它是强⼤的,学会之后的应⽤会让你除了提⾼效率外,会给你带来绝对的成就感。
1.1 正则表达式基本语法
基本符号:
^ 表⽰匹配字符串的开始位置 (例外 ⽤在中括号中[ ] 时,可以理解为取反,表⽰不匹配括号中字符串)
$ 表⽰匹配字符串的结束位置
* 表⽰匹配 零次到多次
+ 表⽰匹配 ⼀次到多次 (⾄少有⼀次)
表⽰匹配零次或⼀次
. 表⽰匹配单个字符
| 表⽰为或者,两项中取⼀项
( ) ⼩括号表⽰匹配括号中全部字符
[ ] 中括号表⽰匹配括号中⼀个字符 范围描述 如[0-9 a-z A-Z]
{ } ⼤括号⽤于限定匹配次数 如 {n}表⽰匹配n个字符 {n,}表⽰⾄少匹配n个字符 {n,m}表⽰⾄少n,最多m
\ 转义字符 如上基本符号匹配都需要转义字符 如 * 表⽰匹配*号
\w 表⽰英⽂字母和数字 \W ⾮字母和数字
\d 表⽰数字 \D ⾮数字
1.2 常⽤的正则表达式
E-mail地址:/^ [\w-]+(.[\w-]+)*@[\w-]+(.[\w-]+)+$/
:/^ [1-9]\d{5}$/
⾝份证号:/^ [1-9]\d{5}(18|19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/
2. ⼿机号正则表达式
【主要依据】⼿机号主要有 13、14、15、17、18、19开头的,总共11位
【校验电话码格式】— 正则表达式:/^ (13[0-9]|14[5-9]|15[0-3,5-9]|16[2,5,6,7]|17[0-8]|18[0-9]|19[1,3,5,8,9])\d{8} $/只是⼤概判断,不⼀定完全准确
/*校验电话码格式 */
function isTelCode(str){
var reg=/^ (13[0-9]|14[5-9]|15[0-3,5-9]|16[2,5,6,7]|17[0-8]|18[0-9]|19[1,3,5,8,9])\\d{8} $/;
st(str);
}
【了解】
规则 (注:会有不断更新的)
【数据卡】:14号段以前为上⽹卡专属号段,如中国联通的是145,中国移动的是147,中国电信的是149等等。
【虚拟运营商】:170[1700/1701/1702]、162(电信),1703/1705/1706、165(移动),1704/1707/1708/1709(联通)、171、167(联通)
【卫星通信】: 1740[0-5] (电信),1349(移动)
【物联⽹⽹号】:10648、1440 (移动),10646、146(联通),10649、1410(电信)
【国家⼯信部应急通信】:1740[6-9],1741[0-2]
⼿机号码: 13[0-9], 14[5,6,7,8,9], 15[0-3, 5-9], 16[2,5,6,7], 17[0-8], 18[0-9], 19[1,3,5,8,9]
移动号段: 13[4-9],147,148,15[0-2,7-9],165,170[3,5,6],172,178,18[2-4,7-8],19[5,8]
联通号段: 130,131,132,145,146,155,156,166,167,170[4,7,8,9],171,175,176,185,186js正则表达式判断数字
电信号段: 133,149,153,162,170[0,1,2],173,174[0-5],177,180,181,189,19[1,3,9]
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论