Smarty的用双引号替换文本
问题描述:
我在智者(PHP模板系统)以下字符串变量$测试:Smarty的用双引号替换文本
<img height="113" width="150" alt="Sunset" src="/test.jpg"/>
我要添加“EM”的高度和宽度是这样的:
{$test|replace:'" w':'em" w'|replace:'" a':'em" a'}
但这不起作用......问题和解决方案是什么?
答
我的正则表达式不是最大的,或者我给你一个更好的匹配器,但也许使用你通过正则表达式替换的工作。
{$test|regex_replace:'/".w/':'em" w'|regex_replace:'/".a/':'em" a'}
其他的匹配尝试
'/\".w/'
'/".*w/'
'/\".*w/'
我不能在此刻我的Smarty的站点玩,但我会先删除“从替换值,看是否是错误在那里,然后从匹配删除它,只是看的高度/宽度。
否则我会怎么做,如果你能在PHP中的替代。
答
你知道“时间”单位HTML宽/高属性不是val编号,对吧?这只是CSS。
答
随着Aggiorno的智能搜索和替换,你可以做这样的:
搜索模式:
<img height="$h" width="$w" $attributes/>
替换模式:
<img height="$[h]em" width="$[w]em" $attributes"/>
当你点击 “搜索”按钮,在应用替换之前,所有事件都会突出显示,以便您可以进一步检查,之后您可以放心地应用替换。
是的,我发现后,我设法取代它所有... 现在我用'style =“width:150em; height:113em”'替换宽度和高度。这工作更好;) – Joep 2008-11-24 10:02:22