因此我开始使用正则表达式,并尝试使用正则表达式匹配以下文本的外部 {% tag xyz %}{% endtag %}
标记:
{% tag xyz %}
{% tag abc %}
{% endtag %}
{% endtag %}
我的正则表达式如下所示,并且到目前为止有效:
({%)\s*(tag)([^%}]*?)(?:\s*(?:(%})((?:(?:[^{%]*?)|(?R))*)(?:({%)\s*(end\2)\s*(%}))))
但是,只要匹配标签内的文本包含单个{
或%
符号,则正则表达式将无法按预期工作。我认为这是因为可能匹配的字符类,或者{%
也可能是单个字符。我尝试了很多,但最终还是尝试失败,但没有成功。{
%
在这个问题上有帮助吗?
我设置了两个regex101链接供您显示问题:
任何帮助,我们都感激不尽!
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句