1. 程式人生 > >最新的js中校驗手機號和身份證號的正則表示式

最新的js中校驗手機號和身份證號的正則表示式

由於之前的專案中手機校驗,無法滿足現有的大王卡、螞蟻寶卡等校驗。下面提供一個新的正則表示式:

//js中正則表示式的寫法  ‘/reg/’ reg就是正則表示式

var mobile = /^(13[0-9]|14[579]|15[0-3,5-9]|16[6]|17[0135678]|18[0-9]|19[89])\d{8}$/;

if(mobile.test('手機號')){

//校驗通過,則執行

}

18位身份證校驗(重點是生日如:19931023):

var identity_card =/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[0-9]|[12][0-9]|3[01])\d{3}(\d|[xX])$/;

15位的身份證:(倆位年,同時無最後的校驗碼)

/^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[0-9]|[12][0-9]|3[01])\d{3}$/;

綜合的身份證校驗表示式:

var identity_card =/^[1-9]\d{5}(18|19|20)?\d{2}(0[1-9]|1[0-2])(0[0-9]|[12][0-9]|3[01])\d{3}(\d|[xX])?$/;

目前還是有缺陷:無法校驗月份日期如:0230 ,0931 等不合理的日期

繼續優化:月份日期的四位正則匹配如下

/^((0[13578]|1[02])(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)(0[1-9]|[12][0-9]|30))|(02(0[1-9]|[1][0-9]|2[0-8]))$/;

優化後的身份證校驗正則表示式:

var identity_card =/^[1-9]\d{5}(18|19|20)?\d{2}(((0[13578]|1[02])(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)(0[1-9]|[12][0-9]|30))|(02(0[1-9]|[1][0-9]|2[0-8])))\d{3}(\d|[xX])?$/;

相關推薦

最新js中校機號身份證表示式

由於之前的專案中手機校驗,無法滿足現有的大王卡、螞蟻寶卡等校驗。下面提供一個新的正則表示式://js中正則表示式的寫法  ‘/reg/’ reg就是正則表示式var mobile = /^(13[0-9]|14[579]|15[0-3,5-9]|16[6]|17[01356

在java中使用驗證機號身份證,中間使用*代替

1.對手機號進行驗證,手機號中間使用*號代替,效果:130****4152 //首先從enterprise中獲得到手機號 String phone = enterprise.getAdminPhone(); //對手機號進行正則驗證 String phoneNumber =

Delphi:校機號身份證

理論值 number nth bit 身份證號碼 copy 內部 ons 字符 //校驗手機號 function IsMobileNumber( num:string ):boolean; begin Result:=False; if

swift 郵箱、密碼、機號身份證驗證

/驗證郵箱 class func validateEmail(email: String) -> Bool { if email.count == 0 { return false } let emailReg

2018最新版 機號、驗證碼表示式 jq + 小程式

HTML: <!-- 表單 --> <input class="weui-input" id="tel" type="tel" placeholder="請輸入手機號"> <input class="weui-input" t

JavaScript驗證機號是否正確(表示式

為了在使用者輸入時驗證手機號格式是否輸入正確的JS函式如下: function validatemobile(newname) { if (newname.length == 0) {

js機號身份證脫敏顯示

$(function (){ var a = document.getElementById("a").value.substring(0,4)+"**********"+document.getElementById("a").value.substring(14,

BankCardUtils 根據銀行卡 獲取 銀行卡型別、銀行名稱銀行編碼 自動格式化銀行卡機號身份證輸入的工具類

BankCardUtils 專案地址:nanchen2251/BankCardUtils  簡介:根據銀行卡號 獲取 銀行卡型別、銀行名稱和銀行編碼 自動格式化銀行卡號、手機號、身份證號輸入的工具類 更多:作者   提 Bug  

JS程式碼隨機生成姓名、機號身份證、銀行卡

JS程式碼隨機生成姓名、手機號、身份證號、銀行卡號          開發測試的時候,經常需要填寫姓名、手機號、身份證號、銀行卡號,既要符合格式要求、又不能重複。   // 生成隨機姓名 functi

利用表示式,通過js機號

js程式碼:<script type="text/javascript">//對手機號進行校驗function phoneChick(){//    獲取輸入框var phoneInput = $("#phonenumber");//    獲取輸入框內容var

jquery表示式驗證糾正版(機號身份證、中文名稱)

最新福利:領取阿里雲1000通用代金券   <script type="text/javascript"> // 驗證中文名稱 function isChinaName(name) { var pattern = /^[\u4E00-\u9FA5]{1,6}$/; retu

影藏機號郵箱(即將號碼中間部分打***

封裝為一個公共函式 /** * 隱藏郵箱和手機號 * @param unknown $str * @return Ambigous <string, mixed> */ function hideStar($str) { //使用者名稱、郵箱、手機賬號中間字串以*隱

JAVA 頁面隱藏機號或者身份證

我現在用到最簡單的方法就是直接在sql上動手腳,直接上程式碼  SELECT DISTINCT(c.name),c.id,c.nick_name,c.state,REPLACE(c.phone,SUBSTR(c.pho

jquery表示式驗證(機號身份證、中文名稱)

數字判斷方法:isNaN()函式 test()方法 判斷字串中是否匹配到正則表示式內容,返回的是boolean值 ( true / false ) // 驗證中文名稱 function isChinaName(name) { var pattern

表示式機號身份證

一、手機號:/^1[34578]\d{9}$/ 二、身份證號:/^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\

C# 中使用表示式驗證電話號碼、機號身份證

驗證電話號碼的主要程式碼如下: public bool IsTelephone(stringstr_telephone) { returnSystem.Text.RegularExpressions.Regex.IsMatch(str_telephone,@

C#中使用表示式驗證電話號碼、機號身份證(轉)

驗證電話號碼的主要程式碼如下:    public bool IsTelephone(stringstr_telephone)    {    returnSystem.Text.RegularExpressions.Regex.IsMatch(str_telephone,@"^(\d{3,4}-)?\d

最全的機號、郵箱java表達式

sem java ava pub matches 正則 判斷 java正則 email格式 //判斷手機格式是否正確public static boolean isMobileNO(String mobiles) { Pattern p = Pattern.compi

JavaScript使用者名稱、密碼強度、email、身份證

使用者名稱正則:    (說明:4到16位,包括字母,數字,下劃線,減號) var uPattern = /^[a-zA-Z0-9_-]{4,16}$/; 密碼強度正則:    (說明:最少6位,包括至少1個大寫字母,1個小寫字母,1個數字,1個特殊字元) v

只能輸入英文數字下劃線橫線的表示式

var reg="^[A-Za-z0-9-_]+$"  ; var regus = new RegExp(regs); regus.test("所要驗證的字串")  true 符合 false 不符合     中英文