替换链接Javascript中字符串的一部分
我有以下链接:替换链接Javascript中字符串的一部分,javascript,vuejs2,Javascript,Vuejs2,我有以下链接: /v1/catalogy/folders/{catalogeId:[0-9]+}/translations/{translationId:[0-9]+}/ 以及以下数据: catalogueId: 31 translationId: 4 现在我想用数据对象的值来更改花括号之间的部分。因此,链接需要如下所示: /v1/catalog/folders/31/translations/4/ Javascript中有没有办法实现这一点?如果是,是什么方式?这是选项之一: const r
/v1/catalogy/folders/{catalogeId:[0-9]+}/translations/{translationId:[0-9]+}/
以及以下数据:
catalogueId: 31
translationId: 4
现在我想用数据对象的值来更改花括号之间的部分。因此,链接需要如下所示:
/v1/catalog/folders/31/translations/4/
Javascript中有没有办法实现这一点?如果是,是什么方式?这是选项之一:
const regex = /\{(.*?)\}/g
const url = "/v1/catalogue/folders/{catalogueId:[0-9]+}/translations/{translationId:[0-9]+}/"
const replacements = { catalogueId: 19, translationId: 20 }
const result = url.replace(regex, function(_, segment) {
return replacements[ segment.split(':')[0] ];
});
见下面的例子
var数据={
电话号码:31,,
翻译ID:4,
};
var url=$('#mylink').attr('href');
for(var输入数据){
var regex=newregexp('{'+key+'[^}]*}','g');
console.log(regex);
url=url.replace(regex,data[key]);
}
console.log(url);
$('#mylink').attr('href',url)代码>
当您尝试时,出现了什么问题?我建议看一看,作为一个提示。但首先,是浏览器地址栏中的链接(您是否在该链接所代表的页面上),还是文档中其他地方的字符串?简洁明了。编辑以删除一些参数化噪波(如果有麻烦,请道歉)