如何在javascript中用*替换@之前的电子邮件id文本?

如何在javascript中用*替换@之前的电子邮件id文本?,javascript,Javascript,我正在尝试在react Js中重置密码。我需要显示发送到他们的电子邮件Id的电子邮件。我不想显示他们的整个电子邮件,而是想将一些字符替换为*。 例如,某人有一封电子邮件testing@gmail.com所以我想用*ie tes替换一些随机字符***g@gmail.com. 我怎么能用javascript做到这一点?? 我的代码: 但这不是有效的方法。如何有效地做 如果我有test@gmail.com然后它应该显示t**t@gmail.com如果any@gmail.com它应该像一个*y@gmai

我正在尝试在react Js中重置密码。我需要显示发送到他们的电子邮件Id的电子邮件。我不想显示他们的整个电子邮件,而是想将一些字符替换为*。 例如,某人有一封电子邮件testing@gmail.com所以我想用*ie tes替换一些随机字符***g@gmail.com. 我怎么能用javascript做到这一点?? 我的代码:

但这不是有效的方法。如何有效地做

如果我有test@gmail.com然后它应该显示t**t@gmail.com如果any@gmail.com它应该像一个*y@gmail.com.

使用以下方法:

var输入=”testing@gmail.com";
函数callme(){
var a=输入。拆分(“@”);
var b=a[0];
var newstr=“”;
用于(b中的var i){
如果(i>2&&i使用此选项:

var输入=”testing@gmail.com";
函数callme(){
var a=输入。拆分(“@”);
var b=a[0];
var newstr=“”;
用于(b中的var i){

如果(i>2&&i你已经开始了:分成几个部分,并对第一部分应用一个算法来替换一些字符,然后再次连接这些位

以下内容将根据始终保留最后一个字符并替换至少一个前导字符的公式替换第一部分的一部分。随着字符串变长,它将替换更多的前导字符

调整生成startIndex和endIndex值的乘数以替换更多或更少的字符

函数mungeEmailAddress{
变量i=s.indexOf('@');
var startIndex=i*.2 | 0;
var endIndex=i*.9 | 0;
返回s.slice(0,startIndex)+
s、 切片(开始索引,结束索引)。替换(/。/g,“*”)+
s、 切片(endIndex);
}
//测试。。。

对于(var s='',t='@foo.com',i=97;i您已经有了一个开始:分成几个部分,并对第一部分应用一个算法来替换一些字符,然后再次连接位

以下内容将根据始终保留最后一个字符并替换至少一个前导字符的公式替换第一部分的一部分。随着字符串变长,它将替换更多的前导字符

调整生成startIndex和endIndex值的乘数以替换更多或更少的字符

函数mungeEmailAddress{
变量i=s.indexOf('@');
var startIndex=i*.2 | 0;
var endIndex=i*.9 | 0;
返回s.slice(0,startIndex)+
s、 切片(开始索引,结束索引)。替换(/。/g,“*”)+
s、 切片(endIndex);
}
//测试。。。

对于(var s='',t='@foo.com',i=97;i“但这不是有效的方法。”为什么不呢?我想从倒数第二个而不是倒数第二个regex replace我建议你给出一些输入和预期输出的示例。当你说你对短名称有问题时,你不会告诉我们你想发生什么。用几个电子邮件地址示例和你想得到什么更新问题。“但这不是有效的方法。”为什么不呢?我想从倒数第二个而不是倒数第二个regex replace我建议你给出一些输入和预期输出的示例。当你说你对短名称有问题时,你不会告诉我们你想发生什么。用几个电子邮件地址示例更新问题,以及你想得到什么。等到OP澄清了问题之后ey want。这不会混淆任何名称部分长度小于4个字符的电子邮件地址。你是对的。我根据输出编写了此代码!:)包含jQuery是因为…?等待OP澄清他们想要什么。这不会混淆任何名称部分长度小于4个字符的电子邮件地址。你是对的。我根据输出编写了此代码!:)包含jQuery是因为…?
let a = testing@gmail.com
let c = a.split('@');
let b = c[0].slice(0,-3)+'***'+'@'+c[1];