Javascript 默认字符串内容的更改

Javascript 默认字符串内容的更改,javascript,jquery,Javascript,Jquery,我有一个默认字符串:{0}blah blah blah{1},其中{0}和{1}在加载到文本框中时将替换为一个值 示例:如果{0}=“CUP”和{1}=“GIRLS”,文本框中显示的字符串是“CUP blah blah blah GIRLS” 现在的问题是:当用户编辑默认消息并单击“保存”时,如何替换修改消息中的{0}=“CUP”和{1}=“GIRLS”?(原始消息的任何部分都可能发生消息更改)使用方法 console.log( “{0}诸如此类诸如此类{1}” .replace(/\{0}/

我有一个默认字符串:
{0}blah blah blah{1}
,其中
{0}
{1}
在加载到文本框中时将替换为一个值

示例:如果
{0}=“CUP”
{1}=“GIRLS”
,文本框中显示的字符串是
“CUP blah blah blah GIRLS”

现在的问题是:当用户编辑默认消息并单击“保存”时,如何替换修改消息中的{0}=“CUP”和{1}=“GIRLS”?(原始消息的任何部分都可能发生消息更改)

使用方法

console.log(
“{0}诸如此类诸如此类{1}”
.replace(/\{0}/,'CUP')
.replace(/\{1}/,'GIRLS')
)
使用方法

console.log(
“{0}诸如此类诸如此类{1}”
.replace(/\{0}/,'CUP')
.replace(/\{1}/,'GIRLS')

)
您可以调用自定义替换函数:

var replace = function(s,d) {
    return s.replace(/\{(\d+)\}/g,function(m,k,v){
        return d[k];
    });
}

var result  = replace("{0} blah blah blah blah {1}", ["hello", "world"]);
console.log(result);

//Returns: hello blah blah blah blah world
或者您可以将此方法添加到string类(不推荐)


您可以调用自定义替换函数:

var replace = function(s,d) {
    return s.replace(/\{(\d+)\}/g,function(m,k,v){
        return d[k];
    });
}

var result  = replace("{0} blah blah blah blah {1}", ["hello", "world"]);
console.log(result);

//Returns: hello blah blah blah blah world
或者您可以将此方法添加到string类(不推荐)


这个场景怎么样(保存前):
foo foo foo CUP foo blah blah GIRLS
?我不认为它会满足它。为什么不使用
{\d+}
而不是硬代码期望0或1-那么该函数可以用来替换任意数量的字符串。这个场景(保存前)如何:
foo foo CUP foo blah blah GIRLS
?我认为它不能满足它。为什么不使用
{\d+}
而不是硬代码期望0或1-那么函数可以用来替换任意数量的字符串。