前端利用正则对手机号码,身份证号,姓名进行脱敏处理

前端利用正则对手机号码,身份证号,姓名进行脱敏处理

一、脱敏规则

手机号码:第4到第7位用掩码替换
身份证号:第7-14位用掩码替换
姓名:保留姓,名(无论一位或两位)统一用一个*替换

二、脱敏方法

/**
 * 脱敏公共方法
 */
export const encryptPublic = (str, kind) => {
  if (!str) return ''
  if (kind == 'name') {
    return str.substr(0, 1) + '*'
  }
  if (kind == 'idcard') {
    return str.replace(/^(.{6})(?:\d+)(.{4})$/, '$1********$2')
  }
  if (kind == 'phone') {
    return str.replace(/(\d{3})\d{4}(\d{4})/, '$1****$2')
  }
}

总结

正则很奇妙

你可能感兴趣的:(js,js,正则,星号替换)