我想在我的视图文件中写一些注释,这些注释在发送到用户浏览器之前被删除。
评论的一个例子是:
### - [[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);
谢谢。。。
我会使用这样的
(?s)(?<='r?'n|^)###.*?(?<='r?'n)###.*?(?='r?'n|$)
(?s)
切换单一模式,使.
与换行符匹配