银行卡往往只显示后面四位或者前四位后四位,中间显示*星号,下面的正则代码就能轻松实现这种效果:
下面的正则,可以显示末尾四位,其他位数都是*号,并且每四位隔开(**** **** **** 1234):
var data = "3265986532146598"; console.log(data.replace(/\s/g,'').replace(/(\d{4})\d+(\d{4})$/, "**** **** **** $2"))
最后输出为:**** **** **** 6598
下面的正则,显示前4位和后4位,中间的全部用星号显示(1234 **** **** 1234):
var data = "3265986532146598"; console.log(data.replace(/\s/g,'').replace(/(\d{4})\d+(\d{4})$/, "$1 **** **** $2"))
最后输出为:3265 **** **** 6598