我在smarty(php模板系统)变量$ test:
中有以下字符串<img height="113" width="150" alt="Sunset" src="/test.jpg"/>
我想将“em”添加到高度和宽度,如下所示:
{$test|replace:'" w':'em" w'|replace:'" a':'em" a'}
但这不起作用......问题和解决方案是什么?
答案 0 :(得分:4)
你知道HTML宽度/高度属性中的'em'单位是无效的,对吗?那只是CSS。
答案 1 :(得分:2)
我的正则表达式并不是最好的,或者我会给你一个更好的匹配器,但也许使用你通过正则表达式替换的东西会起作用。
{$test|regex_replace:'/".w/':'em" w'|regex_replace:'/".a/':'em" a'}
其他匹配器尝试
'/\".w/'
'/".*w/'
'/\".*w/'
我目前无法使用我的智能网站,但我首先删除“来自替换值,看看是否有错误,然后从匹配器中删除它,只是寻找高度/宽度
否则我会用PHP替换。
答案 2 :(得分:0)
使用Aggiorno的智能搜索和替换,您可以这样做:
搜索模式:
<img height="$h" width="$w" $attributes/>
替换模式:
<img height="$[h]em" width="$[w]em" $attributes"/>
当您点击“搜索”按钮时,所有出现的内容都会在应用替换之前突出显示,以便您可以进一步检查,之后您可以自信地应用替换。