标签: javascript regex
代码如下所示:
{% for item in example %} {{ item }} {% endfor %}
基本上,我在这段代码中需要三件事。 item,example以及代码块的内容。我使用这个表达式:
item
example
^{% for (.*?) in (.*?) %}((.*?|\n)+){% endfor %}$
但是,如果我有多个代码格式,那么它会匹配for的第一个开头的所有代码,直到最后一次关闭endfor。屏幕截图可能有助于解释这一点:
for
endfor
我也在这里:https://regex101.com/r/zD1vO9/3
答案 0 :(得分:0)
在?之后添加+以进行非贪婪的匹配。
?
+
^{% for (.*?) in (.*?) %}((.*?|\n)+?){% endfor %}$
DEMO
或强>
^{% for (.*?) in (.*?) %}([\s\S]+?){% endfor %}$