【发布时间】:2014-05-05 08:49:12
【问题描述】:
我试图在一个字符串中单独捕获所有{% tag %}...{% endtag %} 块,但我的正则表达式总是返回从第一个开始标记到最后一个结束标记的整个字符串。我怎样才能让它分别捕获所有块而不是只捕获一个匹配?
这是一个字符串的例子:
{% tag %}Lorem ipsum dolor sit amet{% endtag %}
{% tag %}
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
{% endtag %}
还有我的正则表达式(红宝石):/(\{% trans %\}.*\{% endtrans %\})/m
我知道.* 是问题所在,但除了结束标记之外,我还没有找到匹配所有内容的方法。
【问题讨论】: