验证身份证号码的正确正则表达式
验证身份证号码的正确正则表达式 /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/
function isCardNo(card)
{
// 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X
var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
if(reg.test(card) === false)
{
alert("身份证输入不合法");
return false;
}
}
扩展资料:
正则表达式的书写语法
1、^ 表示匹配字符串的开始位置 (例外 用在中括号中[ ] 时,可以理解为取反,表示不匹配括号中字符串)
2、$ 表示匹配字符串的结束位置
3、* 表示匹配 零次到多次
4、+ 表示匹配 一次到多次 (至少有一次)
5、? 表示匹配零次或一次
6、. 表示匹配单个字符
7、| 表示为或者,两项中取一项
8、( ) 小括号表示匹配括号中全部字符
9、[ ] 中括号表示匹配括号中一个字符 范围描述 如[0-9 a-z A-Z]
10、{ } 大括号用于限定匹配次数 如 {n}表示匹配n个字符 {n,}表示至少匹配n个字符 {n,m}表示至少n,最多m
11、\ 转义字符 如上基本符号匹配都需要转义字符 如 \* 表示匹配*号
12、\w 表示英文字母和数字 \W 非字母和数字
13、\d 表示数字 \D 非数字
参考链接来源:百度百科-正则表达式
2023-05-19