[英]Regular Expression for a condition
我正在構建HTML模板系統,我需要允許用戶添加條件,如下所示。
if條件的示例;
..HTML...
[if:UserLevel > 100]
...conditional HTML...
[endif]
...More HTML....
我需要一個匹配的PHP正則表達式;
[if:$]
$
[endif]
$,如果是變量/通配符。
"/\[if:([^]]+)](.*?)\[endif]/s"
將按照您的要求進行。
請注意 ,僅將像這樣的普通正則表達式用於模板並不是一種有效的方法,甚至在某些情況下也不起作用。 例如,使用此類正則表達式解析它們時,您不能嵌套這些if語句。
有很多模板語言,我建議您看一看。 (除非您僅出於教育目的這樣做。)
preg_match("(\[if:([^]+])\](.*?)\[endif\])is",$data);
s
修飾符允許輸入數據中包含換行符。
如果捕獲到匹配項,則$match[1]
為條件,而$match[2]
為其中的HTML。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.