用正则表达式替换文本占位符

Replace text place holders with Regular Expression

我有一个文本模板,其中包含用 {{ 和 }} 包裹的文本变量。

我需要一个正则表达式来为我提供 "Include {{ and }}".

的所有匹配项

例如,如果我的文本中有 {{FirstName}},我想找回 {{FirstName}} 作为匹配项,以便能够用实际变量替换它。

我已经找到了一个正则表达式,它可能给出了 INSIDE { 和 } 的内容,但我不知道如何将其修改为 return 我想要的内容。

/\{([^)]+)\}/

这个模式应该可以解决问题:

string str = "{{FirstName}} {{LastName}}";

Regex rgx = new Regex("{{.*?}}");

foreach (var match in rgx.Matches(str))
{
    // {{FirstName}}
    // {{LastName}}
}

也许:

alert(/^\{{2}[\w|\s]+\}{2}$/.test('{{FirstName}}'))

^: 开头。

$:最后。

\{{2}: 字符{ 2次。

[\w|\s]+: 字母字符或空格出现 1 次或多次。

\}{2}: 字符} 2次。

更新:

alert(/(^\{{2})?[\w|\s]+(\}{2})?$/.test('FirstName'))