[英]preg_match not between specific tags
我有模板引擎。 匹配{if} ... {/ if}塊時,將按{else | elif}條件拆分內容。
但是,當內容嵌套{if} ... {/ if}塊時,{else | elif}條件算法匹配錯誤的else或elif標簽。
也許我有這樣的內容;
黑線應該可以選擇,紅線不能選擇。
這是我的舊匹配模式,但無法正常工作
/{(else|elif)[\s]*(.*?)[\s]*}/
preg_match_all("/\{\/if}(.*?)\{if \$test3 \}/ms", $input_lines, $output_array);
Echo $output_array[1];
實際觀看http://www.phpliveregex.com/p/fhf
(您需要按下preg_match_all按鈕才能使其正常工作)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.