用正则表达式替换文本占位符
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'))
我有一个文本模板,其中包含用 {{ 和 }} 包裹的文本变量。
我需要一个正则表达式来为我提供 "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'))