【发布时间】:2024-01-23 02:04:01
【问题描述】:
这是我的代码:
$template = preg_replace("\s*/\<\!\-\-\{(.+?)\}\-\-\>/s", "{\\1}", $template);
还有html,我想删除评论的缩进:
<!--{hello}-->
<div class="novalue">
<a>URL</a>
</div>
<!--{/hello}-->
我希望它是这样的:
{hello}
<div class="novalue">
<a>URL</a>
</div>
{/hello}
但是,结果是:
{hello}
<div class="novalue">
<a></a>
</div>{/hello}
我的问题是,为什么不能只删除 current 行前面的其他空格?
【问题讨论】:
-
您只需要这样做一次,对吗?因此,即使这是一个低效的解决方案,也可以吗?
-
@Andreas 实际上我在我的模板引擎中使用了这个正则表达式,你的答案对于单行就足够了,但是整个模板文件可能无法完美运行.. 我对此有一个想法,我会的明天试试,谢谢你的回答!
-
我会这样做like this。
-
@carry0987 你的答案对于单行来说已经足够了,但是整个模板文件可能无法完美运行.. 请分享那些不起作用的案例,我会尝试改善答案。
标签: php html regex string preg-replace