我确实希望匹配{{
和}}
当此子字符串不包含.
时,正则表达式正常工作:
"When he come, {{person}} will give his son {{something}}".match(/{{(\w*)}}/g) ;
结果:
[" {{person}}"," {{something}}"]
现在,如果此子字符串包含.
(点),则正则表达式不会按预期工作:
"When he come, {{person.firstname}} will give his son {{something}}".match(/{{(\w*)}}/g) ;
结果:
[" {{东西}}"]
person.firstname
。 ?答案 0 :(得分:3)
或使用此模式匹配{{
和}}
{{([^}]*)}}
说明:
[^}] a character class, anything but "}"
答案 1 :(得分:1)
\w
仅匹配a-z, A-Z, 0-9, _
,参见http://www.w3schools.com/jsref/jsref_regexp_wordchar.asp
使用此正则表达式也包括任意数量的点:
/{{([\w\.]*)}}/g