鉴于:
一个字符串,例如
Username="don" Password="somethingcalledpassword" Url="someurl"
搜索字符串的前缀Password =“
目的: 搜索并替换以前缀开头并以后缀(第一次出现)结束的主字符串的所有子字符串。
E.g。
var str = "Username=\"don\" Password=\"somethingcalledpassword\"
Url=\"someurl\"";
//replace somethingcalledpassword with new password.
答案 0 :(得分:1)
根据我的理解,你想要只替换一个字符串。
var replaceBetween = function(str, start, end, what) {
return str.substring(0, start) + what + str.substring(end);
};
var str = "Password=\"somethingcalledpassword\"";
alert(str);
var start = str.indexOf("\"") + 1;
var end = str.lastIndexOf("\"");
var str = replaceBetween(str, start, end, "newPassword");
alert(str);
答案 1 :(得分:0)
您可以替换与以下正则表达式匹配的文本:
/Password="[^"]*"/
所以完整的代码是:
var str = "Username=\"don\" Password=\"somethingcalledpassword\" Url=\"someurl\"";
var newpassword = "anewpassword";
var st2 = str.replace(/Password="[^"]*"/, "Password=\""+newpassword+"\"");