我有一个文本模板,其文本变量包含{{和}}。用正则表达式替换文本占位符
我需要一个正则表达式来给我所有匹配“包括{{和}}”。
例如,如果我在我的文本中有{{FirstName}},我想将{{FirstName}}作为匹配项替换为实际变量。
我已经找到了一个正则表达式,可能会给我什么是INSIDE {和},但我不知道如何修改它以返回我想要的内容。
/\{([^)]+)\}/
我有一个文本模板,其文本变量包含{{和}}。用正则表达式替换文本占位符
我需要一个正则表达式来给我所有匹配“包括{{和}}”。
例如,如果我在我的文本中有{{FirstName}},我想将{{FirstName}}作为匹配项替换为实际变量。
我已经找到了一个正则表达式,可能会给我什么是INSIDE {和},但我不知道如何修改它以返回我想要的内容。
/\{([^)]+)\}/
这种模式应该做的伎俩:
string str = "{{FirstName}} {{LastName}}";
Regex rgx = new Regex("{{.*?}}");
foreach (var match in rgx.Matches(str))
{
// {{FirstName}}
// {{LastName}}
}
更好的选择是'Regex rgx = new Regex(“{{。*?}}”);',如果大括号之间的字符串很大,最好考虑将它展开为'Regex rgx = new Regex “{{[^}] *(?:}(?!})[^}] *)*}}”);' –
可能:
alert(/^\{{2}[\w|\s]+\}{2}$/.test('{{FirstName}}'))
^
:在开始的时候。
$
:最后。
\{{2}
:Character {
2次。
[\w|\s]+
:字母字符或空格1次或多次。
\}{2}
:Character }
2次。
UPDATE:
alert(/(^\{{2})?[\w|\s]+(\}{2})?$/.test('FirstName'))
C#有类似的功能。['java.lang.String中#replace'](https://docs.oracle.com/javase /8/docs/api/java/lang/String.html#replace-java.lang.CharSequence-java.lang.CharSequence-)? – dorukayhan