我正在使用模板系统。在这个模板系统中,我对 if-else 条件使用如下所示的结构;
<if condition="'$condition' != 1">
<div>true source</div>
</if>
比我用以下模式分隔表达式;
$pattern_case = '<if condition="(.*?)">(.*?)</if>';
preg_match("#$pattern_case#si",$string,$case)
但在某些情况下,if-else 进程可以在另一个中使用(嵌套?- recusirve?)例如;
<if condition="'$condition1' != 1">
<div>condition 1 text</div>
<if condition="'$condition2' == 2 ">
<div>condition 2 text</div>
</if>
condition 1 text more
</if>
在这种情况下,模式给出以下结果。
<if condition="'$condition1' != 1">
<div>condition 1 text</div>
<if condition="'$condition2' == 2 ">
<div>condition 2 text</div>
</if>
(所以没有这个)
condition 1 text more
</if>
不使用 domdocument 如何使用 regex 解决该问题?