js 测试题

//身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字母x

function isCardNo(card) { 
  var reg = /(^\d{15}$)|(^\d{14}(\d|X|x)$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/; 
  if(reg.test(card) === false) 
  { 
    console.log("身份证输入不合法");
  }else{
    console.log("身份证输入合法");
  }
  
}

var card15="012345678912345";
var card18="012345678912345678";
var card15x="01234567891234x";
var card18x="01234567891234567x";
var card_not_valid="012345678912";
isCardNo(card15);
isCardNo(card18);
isCardNo(card15x);
isCardNo(card18x);
isCardNo(card_not_valid);




//正则判断是否是1-99之间的数字

function isCardNo(card) { 
  var reg = /^[1-9]\d?$/; 
  if(reg.test(card) === false) 
  { 
    console.log("不属于1-99");
  }else{
    console.log("属于1-99");
  } 
}

isCardNo(100);
isCardNo(0);
isCardNo(99);
isCardNo(98);
isCardNo(1);



//判断是否是 4-6位 字母数字下划线
function isCardNo(card) { 
  var reg = /^[\w]{4,6}$/; 
  if(reg.test(card) === false) 
  { 
    console.log("False");
  }else{
    console.log("4-6位字母数字下划线");
  } 
}

var str1="12ew_3";
var str2="12ew_32";
var str3="1223";
var str4="weqwq";
var str5="____";
var str6="12e";

isCardNo(str1);
isCardNo(str2);
isCardNo(str3);
isCardNo(str4);
isCardNo(str5);
isCardNo(str6);



//判断是否是5-11位数字
function isCardNo(card) { 
  var reg = /^[\d]{5,11}$/; 
  if(reg.test(card) === false) 
  { 
    console.log("False");
  }else{
    console.log("5-11位数字");
  } 
}

var str1="1234";
var str2="12345";
var str3="123456";
var str4="123456789";
var str5="12345678901";
var str6="123456789012";

isCardNo(str1);
isCardNo(str2);
isCardNo(str3);
isCardNo(str4);
isCardNo(str5);
isCardNo(str6);

猜你喜欢

转载自www.cnblogs.com/sea-stream/p/11856056.html