java手机号码加密_用户名-手机号加密特殊处理

本文介绍了在Java中如何处理用户信息,特别是姓名和手机号的加密展示。对于姓名,只显示首字母和末尾字符,中间用星号代替;对于手机号,隐藏中间四位。提供了使用正则表达式和substr方法的两种实现方式。
部署运行你感兴趣的模型镜像

前言

这不是一篇正经的文章,但是或许对你有用.

用户名-只保留姓氏或中间字符特殊处理

需求

在做用户信息展示时,只需展示用户名姓,和最后一位,中间一位用*替代

方法 1:封装函数,利用substr截取字符串**

function formatName(name) {

let newStr;

if (name.length === 2) {

newStr = name.substr(0, 1) + '*'; // 通过substr截取字符串从第0位开始截取,截取1个

} else if (name.length > 2) {

// 当名字大于2位时

let char = '';

for (let i = 0, len = name.length - 2; i < len; i++) {

// 循环遍历字符串

char += '*';

}

newStr = name.substr(0, 1) + char + name.substr(-1, 1);

} else {

newStr = name;

}

return newStr;

}

console.log(formatName('王海龙')); // 输出 王*龙

复制代码

方法 2: 使用正则表达式,只保留姓后面都变为`***``

var str = '王小明';

var reg = /(?<=.)./g;

result = str.replace(reg, '*');

console.log(result); // 王**

复制代码

()圆括号代表的是子表达式,作用是,对子表达式进行分组和归类

?:匹配零个或一个字符,也就是说它只能匹配一个字符(或字符集合)的零次或一次出现,最多不超过一次

.:匹配除换行符以外的字符(也就是匹配任何单个字符,字母,数字,下划线,甚至字符本身)

更多正则表达式内容,可查看

js 中的正则表达式

手机号码中间 4 位用星号(*)替换显示

在做用户信息展示时,手机号属于私人信息,需要将中间四位给隐藏掉

方法 1: 使用正则表达式

var phone = '13701134148';

var resultPhone = phone.replace(/^(\d{3})\d{4}(\d+)/, '$1****$2');

console.log(resultPhone); // 137****4148

复制代码

方法 2: 使用substr方法,字符串截取

var phone = '13701134148';

var mphone = phone.substr(0, 3) + '****' + phone.substr(7);

console.log(mphone);

// 如果用 Es6 模板字符串的话,可以不用+号做拼接

var phone = '13701134148';

var mphone = `${phone.substr(0, 3)}****${phone.substr(7)}`;

复制代码

具体前面两个实例结合:可查看用户名与手机号码实例应用

更多内容,可前往coder.itclan.cn/,欢迎路过的同学们提issue,灵魂拷问

您可能感兴趣的与本文相关的镜像

Llama Factory

Llama Factory

模型微调
LLama-Factory

LLaMA Factory 是一个简单易用且高效的大型语言模型(Large Language Model)训练与微调平台。通过 LLaMA Factory,可以在无需编写任何代码的前提下,在本地完成上百种预训练模型的微调

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值