正则表达式,用于验证国民身份证号码,该号码有9位数字,最终数字为X或V.

时间:2015-12-03 08:24:49

标签: javascript devexpress



function PassportValidate(s, e) {
  var option = rbIdentityVerification.GetValue().toString(); //gets the selected option which is NIC selected by default. devexpress radiobuttonlist
  var text = e.value.toString(); //gets the value from the textbox

  if (option == "NIC") {
    var pattern2 = RegExp("^\d{9}(X|V)$");

    if (!pattern2.test(text)) {
      e.isValid = false;
      e.errorText = "Passport number invalid.(Max 9 numbers)"; //Error message that is to be shown
    }
  }
}




正则表达式,用于验证国家身份证号码,该号码有9位数字,最后一位数字为X或V.代码始终返回无效,因此即使输入正确的 NIC 仍会返回无效

3 个答案:

答案 0 :(得分:1)

虽然\d[0-9]的现代正则表达式简写,但我更喜欢使用后者。

此正则表达式正常^([0-9]{9})(X|V)$

这是工作jsfiddle

答案 1 :(得分:1)

尝试使用这个(斯里兰卡网卡新旧格式)。这将接受所有带有 V 或 X(上或下)的数字。

/^([0-9]{9})(X|V)$|^([0-9]{11})/gis

答案 2 :(得分:0)

我认为这可能会对你有所帮助

^\d{9}[V|v|X|x]$