我希望能够在我的视图文件中编写一些注释,在将其发送到用户浏览器之前将其删除。
评论可能是一个例子:
### - [[VIEW COMMENTS
# Comments for a view file.
#
### - VIEW COMMENTS END]]
静态部分是第1行和第4行 - 其间的所有内容都是可变的。
我该怎么做?我已尝试使用preg_replace,但它没有成功:
$build = preg_replace("/([### - \[\[VIEW COMMENTS])([^\[\]+)([### - VIEW COMMENTS END\]\]])", '', $build);
答案是(由Anirudh提出):
$build = preg_replace('/(?s)(\r?\n|^)###.*?(\r?\n)###.*?(?=\r?\n|$)/', '', $build);
我自己也做了这个工作:
$build = preg_replace('/([### - [[VIEW COMMENTS])(.*)([### - VIEW COMMENTS END]]])/s', '', $build);
...谢谢
答案 0 :(得分:1)
我会用这样的东西
(?s)(?<=\r?\n|^)###.*?(?<=\r?\n)###.*?(?=\r?\n|$)
(?s)
切换单一模式,使.
与新线匹配