js如何将手机号的中间4位变成*号
dearweb 发布:2023-03-02 09:53:19阅读:要将手机号的中间四位替换为星号,可以使用 JavaScript 中的字符串方法 `replace()` 和正则表达式来实现。下面是一种可能的实现方式:
const phoneNumber = "12345678901"; const maskedNumber = phoneNumber.replace(/(\d{3})\d{4}(\d{4})/, "$1****$2"); console.log(maskedNumber); // 输出 123****8901
这段代码中,我们首先定义了一个手机号字符串 `phoneNumber`,然后使用 `replace()` 方法将其中的中间四位替换为星号,生成一个新的字符串 `maskedNumber`。具体来说,我们使用了一个正则表达式 `/(\d{3})\d{4}(\d{4})/`,它可以匹配一个 11 位的手机号,并将其分成三个部分:
- `(\d{3})` 表示前三位数字,使用了一个捕获组。
- `\d{4}` 表示中间四位数字,不需要捕获。
- `(\d{4})` 表示后四位数字,使用了另一个捕获组。
然后,我们在 `replace()` 方法中使用了 `$1****$2` 这样的字符串作为替换模板,其中 `$1` 表示第一个捕获组的内容,也就是手机号的前三位数字,`$2` 表示第二个捕获组的内容,也就是手机号的后四位数字。这样,我们就把中间的四位数字替换成了四个星号,得到了一个新的被屏蔽了中间四位的手机号。
需要注意的是,这种实现方式仅适用于中国大陆的手机号码,因为它假设了手机号码的格式是前三位+中间四位+后四位。如果要适用于其他地区的手机号,需要根据具体的格式来修改正则表达式和替换模板。
小礼物走一波,支持作者
赏还没有人赞赏,支持一波吧