1. 程式人生 > >正則驗證、計算身份證

正則驗證、計算身份證

1.校驗15、18位身份證

const regCart = /(^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$)|(^[1-9]\d{5}\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{2}$)/;

缺點:未校驗2月份的天數不超過28

2.校驗手機號碼

const regExp = /^1(3|4|5|7|8)\d{9}$/;

3.根據身份證計算出生日期、年齡、性別

calculateCard(str) {
  const
ret = { birthday: null, age: null, gender: null, }; const len = str.length; if (len === 15 || len === 18) { // 計算出生日期 - birthday if (len === 18) { ret.birthday = `${str.substr(6, 4)}-${str.substr(10, 2)}-${str.substr(12, 2)}`; } if (len === 15) { ret.birthday = `19
${str.substr(6, 2)}-${str.substr(8, 2)}-${str.substr(10, 2)}`; } // 計算年齡 - age const ageVal = new Date(ret.birthday); const nowDateTime = new Date(); ret.age = nowDateTime.getFullYear() - ageVal.getFullYear(); // 月、天的差異 if (nowDateTime.getMonth() < ageVal.getMonth() || (nowDateTime.getMonth() === ageVal.getMonth() && nowDateTime.getDate() < ageVal.getDate())) { ret.age -= 1
; } // 計算性別 - gender ret.gender = (parseInt(str.substr(16, 1), 10) % 2 === 1) ? '男' : '女'; } return ret; },

相關推薦

驗證計算身份證

1.校驗15、18位身份證 const regCart = /(^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$)|(^[1

jQuery驗證15/18身份證

最好的jQuery正則驗證身份證程式碼: 按照身份證的演算法定製而成,精確度完美支援15和18位. 錯一個數字或字母都通不過,無需通過資料處理來驗證 //身份證檢驗 var vcity={ 11:"北京",12:"天津",13:"河北",14:"山西",15:"內蒙古", 21:"遼

QQ手機號微信身份證郵箱驗證

blog pre 前綴 highlight var logs clas brush test QQ正則驗證 查了下,現在QQ的長度最長是10位數,驗證格式為不以0開頭的5-10位數字就可以了 var reg = /^[1-9]\d{4,9}$/; reg.test(‘01

Swift String通過下標獲取子串計算字串的寬高16進位制轉10進位制String轉換為AttributedString使用驗證合法性

String通過下標獲取子串 extension String { func index(_ offset: Int) -> Index { return self.index(startIndex, offsetBy: offset) }

身份證驗證判斷身份證表示式15位18位身份證驗證

這次專案對身份證的輸入驗證要求比較高, 因此在網上多方搜查資料,得到了超嚴謹的身份證驗證正則(外加一點點判斷), 現進行記錄,以便後續使用,如下: //HTML部分 <input typ

手機號碼電子郵箱身份證銀行卡驗證

手機號碼:var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/; 電子郵箱:/^[a-z0-9]+([._\-][a-z0-9])@([a-z0-9]+[-a-z0-9]*[a-z0

驗證 只能輸入中文數字字母 2-10個字符之間

正則驗證 只能輸入中文、數字、字母 2-10個字符之間var reg = /([u4e00-u9fa5\dA-Za-z]){2,10}/; //這個表達式有一些特殊字符 比如@ 是可以驗證通過的實際操作後發現下面正則表達式普通字母、數字已經隱含了不包括特殊符號所以下面包含普通字母、數字的正則表達是

php驗證手機郵箱

als href 驗證 clas private hone net 電話 span //驗證電話private function reg_phone($phone){ if (preg_match("/^13[0-9]{1}[0-9]{8}$|15[0189]

js驗證,郵箱,身份證

hang www. 嚴格模式 開始 驗證 mage 大小寫 模式 匹配 代碼片段 多項驗證 常用手機,郵箱,身份證驗證規則 /^1[3,4,5,7,8][0-9]{9}$/ /(\d{6})[1,2]([0-9]{10})(\d|x|X)$/ //[1

驗證數字小數和字元

changeNum:function(s){ if (s.score_rate == null || s.score_rate == '') { return; } var r

泛化能力訓練集測試集K折交叉驗證假設空間欠擬合與過擬合化(L1L2化)超引數

泛化能力(generalization): 機器學習模型。在先前未觀測到的輸入資料上表現良好的能力叫做泛化能力(generalization)。 訓練集(training set)與訓練錯誤(training error): 訓練機器學習模型使用的資料集稱為訓練集(tr

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

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

ASP.NET開發中主要的字元驗證方法-JS驗證表示式驗證控制元件後臺驗證

在ASP.NET開發中主要的驗證方法收藏 <1>使用JS驗證 匹配中文字元的正則表示式: [\u4e00-\u9fa5] 匹配雙位元組字元(包括漢字在內):[^\x00-\xff] 備註:可以用來計算字串的長度(一個雙位元組字元長度計2,ASCII字元計1) 匹配空白行的正則表示式:\n\s

一些有用的js驗證(是否為空,是否為整數,email,手機,電話,身份證

dojo.provide("common.util.validate"); common.util.validate = {    isBlank : function(value) {       if (typeof (value) == "undefinded" ||

實現二代身份證號碼驗證詳解

最近專案需要對身份證進行比較合理的篩選,並不想用到第三方介面,所以寫了個方法: 包括支援身份證號合法性驗證, 支援18位身份證號,支援地址編碼、出生日期、校驗位驗證. 基本上這樣就可以了. IdCo

JavaScript(表示式表單驗證郵箱驗證函式HTML DOM)

正則表示式 1.定義:它是由一個字元序列形成的搜尋模式,當在文字中搜索資料時,可以用搜索模式來描述你要查詢的內容。它可以是一個簡單的字元,或一個更復雜的模式。它可用於所有文字搜尋和文字替換操作。 2.Eg:var patt = /youngamber/i

php不用驗證真假身份證 身份證號碼驗證

<?php $IDCard = new IDCard(); var_dump($IDCard::isCard($_GET['card'])); /** * 身份證處理類 */ class IDCard { //檢證身份證是否正確

交叉驗證及泛化能力

一、正則化 1、模型選擇典型的方式就是正則化。正則化就是結構風險最小化策略的實現,就是在經驗風險項中新增一個鄭澤華想或者叫做懲罰項。 正則化項與模型的關係一般是模型複雜度越高,正則化項的值就會越大。

js驗證數字的方法

字符 ack xxxxxxxx clas cti validate 浮點 則表達式 pre 正則驗證數字的方法: <script type="text/javascript"> function validate(){ var reg

了解jQuery Validate.JS後不用再為驗證頭疼

url 理解 程序 valid 客戶 pre 提高 -s log jQuery Validate 是功能豐富的正則驗證插件,為客戶端提供了強大的驗證功能,同時提供了大量的正則選項,滿足應用程序各種需求。該插件捆綁了一整套有用的驗證方法,同時包括URL驗證和電子郵件驗證,為