JavaScript正则表达式查找和替换

时间:2018-01-29 22:11:27

标签: javascript regex

我需要检查字符串是否包含以下字符串,“密码:”。如果是这样,我想在':'之后立即替换这个词。例如,我有一个字符串,其中包含“密码:测试”。我想删除“Test”并替换为“Removed”。

2 个答案:

答案 0 :(得分:2)

您可以使用以下内容(如果您的浏览器无效,请参阅编辑):



var input = 'Password:Test'

console.log(input.replace(/(?<=Password:).+/, 'Removed'));
&#13;
&#13;
&#13;

修改

正如@ctwheels指出的那样,lookbehinds在JavaScript(see the current stage of the TC39 proposal here)中几乎没有支持。在撰写本文时,只有Chrome(从版本62开始)和Moddable(在2018年1月17日之后)支持JavaScript中的lookbehinds。请改用以下内容:

正则表达式(Password:).+ 替换$1Removed

&#13;
&#13;
var input = 'Password:Test'

console.log(input.replace(/(Password:).+/, '$1Removed'));
&#13;
&#13;
&#13;

答案 1 :(得分:0)

这适用于运行代码:

var string = "Passoword:Test";
var find = string.indexOf(":");
var newstring = string.substr(0,find) + ":" + "Removed";

console.log(newstring);