正则表达式匹配{{和}}之间的所有字符

时间:2015-10-02 14:37:18

标签: regex

我正在尝试匹配此{{Anchor Text|example.com}}描述的所有链接  在一个字符串中。

我尝试使用/{{.*}}/g,但只有在有一个链接时才有效。如果有更多此类链接,则无论我拥有多少链接,它都会匹配从第一个'{{'到最后一个'}}'的整个字符串。

例如:

一些文字

{{link1|example.com}} some text {{link2|example.net}}

匹配

{{link1|example.com}} some text {{link2|example.net}}

但不是匹配数组:

[ {{link1|example.com}}, {{link2|example.com}} ] 

1 个答案:

答案 0 :(得分:1)

在这种特殊情况下你需要的只是在正则表达式中使用非贪婪(懒惰)修饰符?

/{{.*?}}/g

贪婪的正则表达式尝试匹配尽可能多的符号,默认表达式在大多数正则表达式的实现中都是贪婪的。