91aaa在线国内观看,亚洲AV午夜福利精品一区二区,久久偷拍人视频,久久播这里有免费视播

<strong id="fvuar"></strong>

  • <sub id="fvuar"><dl id="fvuar"><em id="fvuar"></em></dl></sub>

    1. 千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

      手機站
      千鋒教育

      千鋒學習站 | 隨時隨地免費學

      千鋒教育

      掃一掃進入千鋒手機站

      領(lǐng)取全套視頻
      千鋒教育

      關(guān)注千鋒學習站小程序
      隨時隨地免費學習課程

      當前位置:首頁  >  技術(shù)干貨  > 銀行卡號正則表達式詳解

      銀行卡號正則表達式詳解

      來源:千鋒教育
      發(fā)布人:xqq
      時間: 2023-11-21 16:04:18 1700553858

      一、銀行卡號正則校驗

      銀行卡號是我們?nèi)粘I钪薪?jīng)常接觸到的一個數(shù)字串,如何驗證銀行卡號的正確性呢?通過正則表達式來實現(xiàn)正則校驗是最直接有效的方法之一。下面是一段實現(xiàn)銀行卡號正則校驗的JavaScript代碼。

      /**
       * 校驗銀行卡號
       * @param {string} cardNo 銀行卡號
       * @returns {boolean} true為合法,false為不合法
       */
      function validateCardNo(cardNo) {
        // 銀行卡號正則表達式
        var reg = /^([1-9]{1})(\d{15}|\d{18})$/;
        return reg.test(cardNo);
      }
      

      該正則表達式中,^表示匹配字符串的開始,([1-9]{1})表示第一位必須是非零數(shù)字,(\d{15}|\d{18})表示后面可以是15位或者18位數(shù)字,$表示匹配字符串的結(jié)束。如果傳入的銀行卡號符合該正則表達式,則會返回true,否則返回false。

      二、銀行卡卡號正確格式

      雖然銀行卡號的長度可以是15位或18位,但是不同銀行的銀行卡號格式可能會有所不同。下面列舉幾家銀行的銀行卡號格式。

      中國工商銀行(ICBC)的銀行卡號格式為:6222XXXXXXXXXXXXXX或6282XXXXXXXXXXXXXXX。

      中國農(nóng)業(yè)銀行(ABC)的銀行卡號格式為:6228XXXXXXXXXXXXXX。

      中國銀行(BOC)的銀行卡號格式為:6227XXXXXXXXXXXX或9558XXXXXXXXXXXXXXX。

      建設(shè)銀行(CCB)的銀行卡號格式為:6227XXXXXXXXXXXX或6217XXXXXXXXXXXX。

      三、銀行卡號正則表達式

      銀行卡號的正則表達式不是唯一的,我們還可以根據(jù)需要自定義正則表達式。下面是一個常用的銀行卡號正則表達式。

      // 銀行卡號正則表達式
      /^([1-9]{1})(\d{14}|\d{18})$/
      

      該正則表達式與前面提到的正則表達式的區(qū)別在于([\d]{14}|[\d]{18})變成了(\d{14}|\d{18}),把中括號變成了小括號。

      四、銀行卡號正則驗證

      驗證銀行卡號是否符合正則表達式的方法有很多,可以使用JavaScript中的正則表達式對象的test方法,也可以使用字符串的match方法。下面是使用match方法的示例代碼。

      /**
       * 驗證銀行卡號是否符合正則表達式
       * @param {string} cardNo 銀行卡號
       * @returns {boolean} true為符合,false為不符合
       */
      function matchCardNo(cardNo) {
        // 銀行卡號正則表達式
        var reg = /^([1-9]{1})(\d{14}|\d{18})$/;
        return cardNo.match(reg) !== null;
      }
      

      五、銀行卡號正則匹配

      如果需要從一段文本中提取出符合正則表達式的銀行卡號,可以使用正則表達式的exec方法。下面是一個從文本中提取銀行卡號的示例代碼。

      /**
       * 從文本中提取銀行卡號
       * @param {string} text 文本
       * @returns {Array} 匹配到的銀行卡號數(shù)組
       */
      function extractCardNo(text) {
        // 銀行卡號正則表達式
        var reg = /([1-9])(\d{14}|\d{17})/g;
        var result = [];
        var temp = null;
        while((temp = reg.exec(text)) !== null) {
          result.push(temp[0]);
        }
        return result;
      }
      

      六、銀行卡號正常是多少位

      銀行卡號的長度可以是15位或18位,如果卡號長度不足,會補齊至15位或18位。不同銀行的卡號長度可能不同,可以通過對照前面提到的銀行卡號格式得知,但是一般情況下銀行卡號長度都是16位。

      七、銀行卡號正則表達式驗證

      為了方便用戶輸入,我們可以在輸入框中實時驗證用戶輸入的銀行卡號是否符合正則表達式。下面是一個實現(xiàn)銀行卡號正則表達式驗證的示例代碼。

      /**
       * 銀行卡號正則表達式驗證
       * @param {string} cardNo 銀行卡號
       * @param {function} callback 回調(diào)函數(shù),驗證結(jié)果通過參數(shù)true/false返回
       */
      function validateCardNoByReg(cardNo, callback) {
        // 銀行卡號正則表達式
        var reg = /^([1-9]{1})(\d{14}|\d{18})$/;
        callback(reg.test(cardNo));
      }
      

      八、銀行卡號規(guī)則

      中國銀行卡行業(yè)標準規(guī)定,銀行卡號是由發(fā)卡行、歸屬地區(qū)、分行代碼、個人賬戶四部分組成,具體規(guī)律如下:

      銀行卡號第1~6位為發(fā)卡行標識代碼,中國人民銀行分配發(fā)行。中國工商銀行的發(fā)卡行標識代碼為:ICBC(6222、6282開頭的卡號)。

      銀行卡號第7~9位為歸屬地區(qū)標識代碼,具體對應(yīng)關(guān)系如下:

      銀行卡號前6位 歸屬地區(qū)標識代碼 城市/省份
      6222 10 北京市
      6282 10 北京市
      6231 11 天津市
      6202 13 上海市
      6221 18 河北省
      6223 18 河北省

      銀行卡號第10~12位為分行標識代碼,由銀行自行分配,且一般只有直轄市和省會城市的銀行分行代碼比較多,其余城市銀行分行代碼較少。銀行卡號第13~19位為個人賬戶標識代碼。個人賬戶標識代碼一般由發(fā)卡行自行決定,所以不同的銀行卡號個人賬戶標識代碼也可能不同。

      九、正則匹配銀行卡號

      正則匹配銀行卡號是非常常見的需求,可以使用JavaScript的正則表達式對象的exec方法來實現(xiàn)。下面是一個正則匹配銀行卡號的示例代碼。

      /**
       * 正則匹配銀行卡號
       * @param {string} text 文本
       * @returns {Array} 匹配到的銀行卡號數(shù)組
       */
      function matchCardNo(text) {
        // 銀行卡號正則表達式
        var reg = /^([1-9]{1})(\d{14}|\d{18})$/g;
        var result = [];
        var temp = null;
        while((temp = reg.exec(text)) !== null) {
          result.push(temp[0]);
        }
        return result;
      }
      

      十、正則表達式匹配銀行卡號

      和正則匹配銀行卡號類似,也可以使用正則表達式來匹配銀行卡號。下面是一個正則表達式匹配銀行卡號的示例代碼。

      var text = '我的銀行卡號是622202xxxxxxxxxxxxx,你的銀行卡號是62222222222222222。';
      // 銀行卡號正則表達式
      var reg = new RegExp('\d{16,19}', 'g');
      var cardNoArr = text.match(reg);
      console.log(cardNoArr); // ["622202xxxxxxxxxxxxx", "62222222222222222"]
      

      該示例代碼使用正則表達式的RegExp函數(shù)來構(gòu)造一個表達式對象,這里正則表達式的意思是匹配16位到19位的數(shù)字串(\d表示數(shù)字字符,{16,19}表示出現(xiàn)次數(shù)在16和19之間)。然后使用字符串的match方法來匹配文本中的銀行卡號。

      聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
      10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
      請您保持通訊暢通,專屬學習老師24小時內(nèi)將與您1V1溝通
      免費領(lǐng)取
      今日已有369人領(lǐng)取成功
      劉同學 138****2860 剛剛成功領(lǐng)取
      王同學 131****2015 剛剛成功領(lǐng)取
      張同學 133****4652 剛剛成功領(lǐng)取
      李同學 135****8607 剛剛成功領(lǐng)取
      楊同學 132****5667 剛剛成功領(lǐng)取
      岳同學 134****6652 剛剛成功領(lǐng)取
      梁同學 157****2950 剛剛成功領(lǐng)取
      劉同學 189****1015 剛剛成功領(lǐng)取
      張同學 155****4678 剛剛成功領(lǐng)取
      鄒同學 139****2907 剛剛成功領(lǐng)取
      董同學 138****2867 剛剛成功領(lǐng)取
      周同學 136****3602 剛剛成功領(lǐng)取
      相關(guān)推薦HOT