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

时间:2016-07-22 17:10:43

标签: c# regex text-manipulation

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

我需要一个正则表达式来为我提供所有匹配"包括{{和}}"。

例如,如果我的文字中有{{FirstName}},我希望{{FirstName}}返回匹配,以便能够将其替换为实际变量。

我已经找到一个正则表达式,可能会给我什么是INSIDE {和},但我不知道如何修改它以返回我想要的内容。

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

2 个答案:

答案 0 :(得分:2)

这种模式可以解决问题:

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

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

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

答案 1 :(得分:0)

也许:

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

^:开头。

$:最后。

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

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

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

<强>更新

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