我正在开发一个循环,用实际的术语(名称)
替换语言标签{lang_vname}
language.js:
var lang = {
//common
vname : "name",
name : "lastname",
adress : "adress",
language : "language",
替换脚本
function translate(output) {
var term = output;
$.each(lang,function(i,l){
var find = "{lang_"+i+"}";
term = term.replace(find,l);
});
return term;}
如果有一种类型的表达式,我无法弄清楚如何替换输出。它只替换第一个标签,如果有第二个标签,则显示标签。
我找到了像replace(/find/g,l);
这样的解决方案,但它不能在这里工作并停止我的整个脚本
有没有办法轻松解决这个问题?
编辑
感谢Felix Kling!他提供的链接使它起作用:D我的最终结果是
function translate(output) {
var term = output;
$.each(lang,function(i,l){
var find = "{lang_"+i+"}";
var regex = new RegExp(find, "g");
term = term.replace(regex, l);
});
return term;
}
感谢您的快速帮助!
答案 0 :(得分:1)
如果这对您不起作用,请提供变量输出的示例
function translate(output) {
var term = output;
$.each(lang, function(i, l){
var find = new RegExp("{lang_"+i+"}", "g");
term = term.replace(find, l);
});
return term;
}