1樓:雪城風嘉
驗證身份證號碼的正確正規表示式 /(^\d$)|(^\d$)|(^\d(\d|x|x)$)/
function iscardno(card)
// 身份證號碼為15位或者18位,15位時全為數字,18位前17位為數字,最後一位是校驗位,可能為數字或字元x
var reg = /(^\d$)|(^\d$)|(^\d(\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,最多m
11、\ 轉義字元 如上基本符號匹配都需要轉義字元 如 \* 表示匹配*號
12、\w 表示英文字母和數字 \w 非字母和數字
13、\d 表示數字 \d 非數字
2樓:維灣教育培訓
isidcard1=/^[1-9]\d((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d$|^[1-9]\d[1-9]\d((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d([0-9]|x)$/;
15位到18位的正則
正則只能驗證身份證的格式是否正確,是驗證不了真偽的,只有公安系統裡才能驗證身份證號真假。
3樓:忙中偷閒帶寶寶
你直接把你的身份證號碼輸進去就可以了,直接驗證。
4樓:匿名使用者
var myregexp=/^\d[\d|x]$|^\d$/i;用myregexp就可以驗證輸入的字串是否符合身份證的編碼規則了或者你直接把/^\d[\d|x]$|^\d$/i;放入控制元件的正規表示式屬性裡面就ok了
5樓:
var reg_idcard = /^(^[1-9]\d((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d$)|(^((1[1-5])|(2[1-3])|(3[1-7])|(4[1-6])|(5[0-4])|(6[1-5])|71|(8[12])|91)\d((19\d(0[13-9]|1[012])(0[1-9]|[12]\d|30))|(19\d(0[13578]|1[02])31)|(19\d02(0[1-9]|1\d|2[0-8]))|(19([13579][26]|[2468][048]|0[48])0229))((\d)|\d[xx])$)$/;
這個是我網上找了 兩個特別常見的身份證正則(然而都是不全的),然後自己研究了會拼接起來的,我驗證是沒問題的,你們試試看吧!
測試資料:
15位:440253850213582
18位:34040219990909021118位帶x:52242619811105565x
6樓:時光de斑駁
******生日***x希望我的答案對你有幫助。^_^
如何用正規表示式替換身份證號碼的中間部分為星號
其實這個只要用普通的字串操作就可以了。非要正則 exec idcardnumber 改寫成replace函式就可以了。如何用正規表示式替換身份證號碼的中間部分為星號 我這裡保留的是身份證前6位和後四位,替換如下 110101199001010001 replace d 1 2 得到結果 110101...
身份證號碼的知識,關於身份證號碼的知識
我國自1999年實施公民身份號碼制度以來,許多公民身份號碼末位為 x 的公民,由於不明白 x 的含義,要求給予更換,產生了不必要的誤會。目前我國公民身份證號碼由18位數字組成 前6位為地址碼,第7至14位為出生日期碼,第15至17位為順序碼,第18位為校驗碼。檢驗碼分別是 0 1 2 10 共11個...
身份證號碼第幾位是辨別性別的,身份證號碼的到數第幾位數是分男女的
身份證號碼第17位數字是辨別性別的 奇數表示男性,偶數表示女性。拓展資料1 前1 2位數字表示 所在省份的 2 第3 4位數字表示 所在城市的 3 第5 6位數字表示 所在區縣的 4 第7 14位數字表示 出生年 月 日 5 第15 16位數字表示 所在地的派出所的 6 第17位數字表示性別 奇數表...