我有一个文本字符串,我想用另一个文本替换它使用regexp
表示每个单词都替换为特定单词
input= Jounal Page Year DOI Roche-Link
我的预期输出
output = Publication Title Pagination Publication Date Digital Object Identifier Roche Link
期刊替换出版物标题
Page by Pagination
按出版日期替换年份
DOI替换为数字对象标识符
罗氏链接取代Roche-Link我的正则表达式检测所有特定单词,但我没有找到使用$
将每个单词替换为特定单词的解决方案
output = input.replace(/\b(Journal|Year|Page|DOI|Roche-Link)\b/g, (Publication Title)+$1, (Pagination)+$2,(Publication Date)+$3,(Digital Object Identifier)+$4,(Roche Link)+$5)
答案 0 :(得分:1)
你可以这样做:
var dict = {
"Journal": "Publication Title",
"Page": "Pagination",
"Year": "Publication Date",
"DOI": "Digital Object Identifier",
"Roche-Link": "Roche Link"
};
var regExp = new RegExp("\\b(" + Object.keys(dict).join("|") + ")\\b", "g");
var translated = "Journal Page Year DOI Roche-Link".replace(regExp, function(match) {
return dict[match];
});
console.log(translated);