正则表达式消除单词

时间:2017-11-04 00:11:31

标签: javascript regex

我有这个字符串:

var chain = "providerId=12$familyId=123&brandId=1122112$officeId=21&";

我需要做一个用正则表达式擦除某个单词的方法。

示例:

var word = "familyId";
var newChain = deleteParam(chain, word);
console.log(newChain);

结果=“providerId = 12 $ brandId = 1122112 $ officeId = 21&”;

删除: familyId = 123&

我尝试按以下方式执行此方法,但它不起作用:

function deleteParam(chain, word) {
   var exp = new RegExp(param, "=[0-9]&");
   var str = chain.replace(exp, ""); // Delete
   return str
}

请,我需要你的帮助,我不能使这个方法有效,因为我不太了解如何构建正则表达式。

对不起,英语不是我的母语

非常感谢所有人。

1 个答案:

答案 0 :(得分:0)

您可以使用类似new RegExp(param + "=\[^&]+")

的内容

以下是一个例子:



var chain = "providerId=12$familyId=123&brandId=1122112$officeId=21&";
var toRemove = "familyId";
var pattern = new RegExp(toRemove + "=[^&]*&");
var newChain = chain.replace(pattern, "");
console.log(newChain);




如果您希望处理GET个请求的搜索参数,最好使用这样的模式(&|\?)*parameterName=[^&]*