Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何用其他文本替换正则表达式{someText}}?_Javascript_Regex - Fatal编程技术网

Javascript 如何用其他文本替换正则表达式{someText}}?

Javascript 如何用其他文本替换正则表达式{someText}}?,javascript,regex,Javascript,Regex,我有一个输入字符串: var mystring = "{{myDog}} is a good dog" 或 var mystring=“{{anotherDog}}是一只好狗” 现在,使用replace方法和正则表达式,我想用替换“{{myDog}”“{{anotherDog}}”或替换为“Tommy” 注意:我不想依赖两组花括号内的字符串。。所以,在两条卷发之间可能有任何东西,连同卷发背带应该被汤米取代。 所以,myString.replace({{myDog}}',Tommy')不起作用

我有一个输入字符串:

var mystring = "{{myDog}} is a good dog"

var mystring=“{{anotherDog}}是一只好狗”

现在,使用
replace
方法和正则表达式,我想用
替换“{{myDog}”
“{{anotherDog}}”
替换为“Tommy”

注意:我不想依赖两组花括号内的字符串。。所以,在两条卷发之间可能有任何东西,连同卷发背带应该被汤米取代。 所以,
myString.replace({{myDog}}',Tommy')
不起作用

所以


如何编写正则表达式?

我已经编写了小模板函数,您可以试试

功能tpl(str,数据){
Object.keys(数据).forEach(函数(键){
str=str.replace(新的RegExp('\{'+key+'\}}'),data[key]);
});
返回str;
}
console.log(
tpl({{myDog}}是一只好狗,{{{anotherDog}}},{myDog:'Tommy',anotherDog:'Jim'})

);我已经编写了小模板函数,你可以试试

功能tpl(str,数据){
Object.keys(数据).forEach(函数(键){
str=str.replace(新的RegExp('\{'+key+'\}}'),data[key]);
});
返回str;
}
console.log(
tpl({{myDog}}是一只好狗,{{{anotherDog}}},{myDog:'Tommy',anotherDog:'Jim'})

);我已经编写了小模板函数,你可以试试

功能tpl(str,数据){
Object.keys(数据).forEach(函数(键){
str=str.replace(新的RegExp('\{'+key+'\}}'),data[key]);
});
返回str;
}
console.log(
tpl({{myDog}}是一只好狗,{{{anotherDog}}},{myDog:'Tommy',anotherDog:'Jim'})

);我已经编写了小模板函数,你可以试试

功能tpl(str,数据){
Object.keys(数据).forEach(函数(键){
str=str.replace(新的RegExp('\{'+key+'\}}'),data[key]);
});
返回str;
}
console.log(
tpl({{myDog}}是一只好狗,{{{anotherDog}}},{myDog:'Tommy',anotherDog:'Jim'})
);构建一个RegExp,允许您调用
。替换一次

function replaceTemplate(str, dict) {
    var re = RegExp('\\{\\{(' + Object.keys(dict).join('|') + ')\\}\\}', 'g');
    return str.replace(re, function (a, b) {
        return dict[b];
    });
}

var s = '{{foo}} is {{bar}}',
    d = {
        foo: 'long day',
        bar: 'long'
    };
replaceTemplate(s, d); // "long day is long"
构建一个RegExp,让您调用一次
.replace
,如下所示

function replaceTemplate(str, dict) {
    var re = RegExp('\\{\\{(' + Object.keys(dict).join('|') + ')\\}\\}', 'g');
    return str.replace(re, function (a, b) {
        return dict[b];
    });
}

var s = '{{foo}} is {{bar}}',
    d = {
        foo: 'long day',
        bar: 'long'
    };
replaceTemplate(s, d); // "long day is long"
构建一个RegExp,让您调用一次
.replace
,如下所示

function replaceTemplate(str, dict) {
    var re = RegExp('\\{\\{(' + Object.keys(dict).join('|') + ')\\}\\}', 'g');
    return str.replace(re, function (a, b) {
        return dict[b];
    });
}

var s = '{{foo}} is {{bar}}',
    d = {
        foo: 'long day',
        bar: 'long'
    };
replaceTemplate(s, d); // "long day is long"
构建一个RegExp,让您调用一次
.replace
,如下所示

function replaceTemplate(str, dict) {
    var re = RegExp('\\{\\{(' + Object.keys(dict).join('|') + ')\\}\\}', 'g');
    return str.replace(re, function (a, b) {
        return dict[b];
    });
}

var s = '{{foo}} is {{bar}}',
    d = {
        foo: 'long day',
        bar: 'long'
    };
replaceTemplate(s, d); // "long day is long"

在本例中,
mystring.replace({{myDog}}',Tommy')
就足够了,除非它需要执行多次。为什么您觉得需要正则表达式?是的,但我不想依赖myDog,2个花括号之间可以有任何字符串。如果您可以假设它们,请查看本例中的模板字符串
mystring.replace(“{{myDog}}”,“Tommy”)
就足够了,除非需要多次执行。为什么您觉得需要正则表达式?是的,但我不想依赖myDog,2个花括号之间可以有任何字符串。如果您可以假设它们,请查看本例中的模板字符串
mystring.replace(“{{myDog}}”,“Tommy”)
就足够了,除非需要多次执行。为什么您觉得需要正则表达式?是的,但我不想依赖myDog,2个花括号之间可以有任何字符串。如果您可以假设它们,请查看本例中的模板字符串
mystring.replace(“{{myDog}}”,“Tommy”)
就足够了,除非需要多次执行。为什么你觉得需要正则表达式?是的,但我不想依赖myDog,2个花括号之间可能有任何字符串。如果你可以假设它们,请看一下模板字符串谢谢Alexander。对不起,我不想依赖我的狗和另一条狗的绳子。在这个tpl({{myDog}}是一只好狗,{{{anotherDog}},{myDog:'Tommy',anotherDog:'Jim}),我们仍然依赖于这些字符串。我想要的是这样的东西:tpl({{{blablhahdf}}是一只好狗,{{{{someotherblahblahthatwident}}},{'Tommy',Jim',})谢谢亚历山大。对不起,我不想依赖我的狗和另一条狗的绳子。在这个tpl({{myDog}}是一只好狗,{{{anotherDog}},{myDog:'Tommy',anotherDog:'Jim}),我们仍然依赖于这些字符串。我想要的是这样的东西:tpl({{{blablhahdf}}是一只好狗,{{{{someotherblahblahthatwident}}},{'Tommy',Jim',})谢谢亚历山大。对不起,我不想依赖我的狗和另一条狗的绳子。在这个tpl({{myDog}}是一只好狗,{{{anotherDog}},{myDog:'Tommy',anotherDog:'Jim}),我们仍然依赖于这些字符串。我想要的是这样的东西:tpl({{{blablhahdf}}是一只好狗,{{{{someotherblahblahthatwident}}},{'Tommy',Jim',})谢谢亚历山大。对不起,我不想依赖我的狗和另一条狗的绳子。在这个tpl({{myDog}}是一只好狗,{{{anotherDog}},{myDog:'Tommy',anotherDog:'Jim}),我们仍然依赖于这些字符串。我想要的是这样的东西:tpl({{{blablhahdf}}是一只好狗,{{{{someotherblahblahthatwideknow}}},{'Tommy',Jim'})