银行卡号正则表达式(附js正则表达式银行卡号脱敏方法)

 分类:js知识时间:2022-05-13 07:30:02点击:

用js正则表达式匹配银行卡号,利用字面量创建银行卡号正则表达式,用test方法检测,为true就是银行卡号。银行卡号脱敏什么意思?就是把银行卡号中间几位替换成*号,保留卡号的前4位和后4位,中间的都变成*号,由于银行卡号长度不一样,具体替换成几个*号需要自己算下。

银行卡号正则表达式

一、用正则表达式匹配银行卡号

1、 利用字面量创建银行卡号正则表达式

let reg = /^([1-9]{1})(\d{15}|\d{16}|\d{18})$/

2、自定义一个银行账号bankAccount

let bankAccount = 6212268202014638666

3、打印出结果为true,说明它是银行卡号

console.log(reg.test(bankAccount)) //true

二、js正则表达式银行卡号脱敏方法

1、保留卡号的前4位和后4位,中间的都变成*号,正则表达式如下:

let reg = /^(.{4})(?:\d+)(.{4})$/

2、银行卡号脱敏方法代码:

let reg = /^(.{4})(?:\d+)(.{4})$/
let bankAccount = '6212268202014638666'
let str = bankAccount.replace(reg, "$1 **** **** $2")
console.log(str)  //6212 **** **** 8666

3、注意:

由于银行卡号长度不一样,具体替换成几个*号需要自己算下

除注明外的文章,均为来源:老汤博客,转载请保留本文地址!
原文地址: