我需要检查字符串是否包含以下字符串,“密码:”。如果是这样,我想在':'之后立即替换这个词。例如,我有一个字符串,其中包含“密码:测试”。我想删除“Test”并替换为“Removed”。
答案 0 :(得分:2)
您可以使用以下内容(如果您的浏览器无效,请参阅编辑):
var input = 'Password:Test'
console.log(input.replace(/(?<=Password:).+/, 'Removed'));
&#13;
正如@ctwheels指出的那样,lookbehinds在JavaScript(see the current stage of the TC39 proposal here)中几乎没有支持。在撰写本文时,只有Chrome(从版本62开始)和Moddable(在2018年1月17日之后)支持JavaScript中的lookbehinds。请改用以下内容:
正则表达式:(Password:).+
替换:$1Removed
var input = 'Password:Test'
console.log(input.replace(/(Password:).+/, '$1Removed'));
&#13;
答案 1 :(得分:0)
这适用于运行代码:
var string = "Passoword:Test";
var find = string.indexOf(":");
var newstring = string.substr(0,find) + ":" + "Removed";
console.log(newstring);