我有一个数据库连接字符串,可以选择包含密码,密码位于符号 :
和 @
之间。
如何使用正则表达式将每个密码符号替换为 #
?
P.S.我不想更改字符串的长度,只想替换密码符号。
最佳答案
您可以使用replace()
var pas = 'ddd:hsjhjshdjhd@dddd:djhfjdfj@';
var res = pas.replace(/:(.+?)@/g, function(_, m) {
var r = ':';
for (i = 0; i < m.length; i++)
r += '#';
return r + '@';
});
document.write(res);
var str = 'ddd:hsjhjshdjhd@ddddSomethingElse';
// Add global flag `g` for more than one password
var res = str.replace(/:([^@]+)/, function(a, m) {
return ':' + new Array(m.length + 1).join('#');
});
document.write(res);
关于javascript - 替换另外 2 个符号之间的所有符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33951181/