Fork me on GitHub

常用正则

身份证号码:

1
2
3
4
// 第二代身份证号码正则
let isTrue = /^[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]$/
// 第一代身份证正则表达式(15位)
let isTrue=/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/

手机号号码:
时间截止为:2018年1月11日
移动号段:134 135 136 137 138 139 147 148 150 151 152 157 158 159 172 178 182 183 184 187 188 198
联通号段:130 131 132 145 146 155 156 166 171 175 176 185 186
电信号段:133 149 153 173 174 177 180 181 189 199
虚拟运营商:170

1
let isTrue = /^(13[0-9]|14[5-9]|15[012356789]|166|17[0-8]|18[0-9]|19[8-9])[0-9]{8}$/

固定电话:

1
let isTrue=(\(\d{3,4}\)|\d{3,4}-|\s)?\d{8}

邮箱:

1
let isTrue =/^([A-Za-z0-9_\-\.\u4e00-\u9fa5])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,8})$/

用户名:

1
2
// 用户名正则,4到16位(字母,数字,下划线,减号)
let isTrue = /^[a-zA-Z0-9_-]{4,16}$/

密码:

1
2
3
4
5
// 以字母开头,长度在6~18之间,只能包含字母、数字和下划线
let isTrue =^[a-zA-Z]\w{5,17}$

// 最少6位,包括至少1个大写字母,1个小写字母,1个数字,1个特殊字符
let isTrue = /^.*(?=.{6,})(?=.*\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[[email protected]#$%^&*? ]).*$/

特殊字符:

1
let isTrue= /["'<>%;)(&+]+-!!@#$~/

域名:

1
let isTrue=[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(/.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+/.?

邮政编码:

1
let isTrue=[1-9]{1}(\d+){5}