正则表达式排除匹配项

时间:2020-07-13 07:49:22

标签: javascript regex

我知道以前已经有人问过这个问题,但是我无法让我工作。在此示例中,我试图获取模板变量,但如果在某种标记中使用了模板变量,则不会。

{{ callMe() }}

<img src="{{ callMe() }}" />

应该匹配第一个{{ callMe() }},但不匹配第二个。香港专业教育学院一直在修补负面的前瞻性,但不确定我是否理解。这是我的正则表达式。任何人都可以看看。谢谢。

(?!<.+\/?>)(({{.*([\w\.]+)\(.*\).*}}))

https://regex101.com/r/ZXU8RM/1

1 个答案:

答案 0 :(得分:0)

(?<!<.*){{.*([\w\.]+)\(.*\).*}}(?!.*>)

需要检查之前没有<,之后没有>

(?<!<[^>]*){{.*([\w\.]+)\(.*\).*}}(?![^<]*>)

还将检查<p>{{ callMe() }}</p>