我在smarty(php模板系统)变量$ test:

中有以下字符串
<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/'

我目前无法使用我的智能网站,但我首先删除<!>从替换值,看看是否存在错误,然后将其从匹配器中删除,只需查找高度/宽度。

否则我会用PHP替换。

其他提示

你知道<!>#8216; em <!>#8217; HTML宽度/高度属性中的单位无效,对吧?那只是CSS。

使用 Aggiorno 的智能搜索和替换,你可以做它是这样的:

搜索模式:

<img height="$h" width="$w" $attributes/>

替换模式:

<img height="$[h]em" width="$[w]em" $attributes"/>

点击<!>“搜索<!>”时;按钮,所有出现在应用替换之前都会突出显示,以便您可以进一步检查,之后您可以自信地应用替换。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top