- 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;
- }
- }
最近的項目中用的需要調用實名認證的接口,實名認證接口價格相比短信而言高了不是幾分錢,所以說調用實名認證的條件就要嚴格把關,因此用到js驗證真實姓名與js驗證身份證號。
進入正題
js驗證真實姓名,是用的unicode字符的來進行匹配,而中國人的姓名長度一般都是2-4,所以重復匹配{2,4}次
1.js驗證真實姓名
- var regName =/^[\u4e00-\u9fa5]{2,4}$/;
- if(!regName.test(name)){
- alert('真實姓名填寫有誤');
- return false;
- }
js驗證身份證號,中國的身份證號,一代身份證號是15位的數字,二代身份證都是18位的,最后一位校驗位除了可能是數字還可能是'X'或'x',所以有四種可能性:a.15位數字 b.18位數字 c.17位數字,第十八位是'X' d.17位數字,第十八位是'x'
2.js驗證身份證號
- var regIdNo = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
- if(!regIdNo.test(idNo)){
- alert('身份證號填寫有誤');
- return false;
- }