需求1: 11位手机号中间四位脱敏显示,例如:187****1234
function noPassByMobile(str){if(null != str && str != undefined){var pat=/(\d{3})\d*(\d{4})/;return str.replace(pat,'$1****$2');} else {return "";}}
需求2: 姓名脱敏处理,规则:3个字以内脱敏第一个字,4—6个字脱敏前两个字,大于6个字脱敏第3—6个字,示例:张三(*三)、张三水(*三水)、长孙无忌(**无忌)、罗斯托罗司机格(罗斯XXXX格)
function noPassByName(str){if(null != str && str != undefined){if(str.length <= 3){return "*" + str.substring(1,str.length);} else if(str.length > 3 && str.length <= 6){return "**" + str.substring(2,str.length);} else if(str.length > 6){return str.substring(0,2) + "****" + str.substring(6,str.length)}} else {return "";}}
需求3: 身份证号脱敏处理
//正则表达式var idCard = '410184199312042029';var id2 = idCard.replace(/^(.{6})(?:\d+)(.{4})$/, "$1****$2");var id3 = idCard.replace(/^(.{2})(?:\w+)(.{1})$/, "\$1****\$2");var id4 = idCard.replace(/^(.{4})(?:\w+)(.{4})$/, "\$1****\$2");
如果觉得《JS 手机号 姓名 身份证号脱敏处理》对你有帮助,请点赞、收藏,并留下你的观点哦!