用正则表达式搜索和替换变量值。
使用PHP的
preg_replace()
函数进行。
虽然Smarty提供了较方便的正则表达式修饰器, 但通常更好的方式是通过自定义函数或自定义修饰器在PHP端进行正则匹配替换。 正则表达式是程序应用代码,不是显示的逻辑代码。
Parameters
参数顺序 | 类型 | 必选参数 | 默认值 | 说明 |
---|---|---|---|---|
1 | string | Yes | n/a | 正则表达式 |
2 | string | Yes | n/a | 替换的字符 |
Example 5.15. regex_replace
<?php $smarty->assign('articleTitle', "Infertility unlikely to\nbe passed on, experts say."); ?>
模板:
{* replace each carriage return, tab and new line with a space *} {$articleTitle} {$articleTitle|regex_replace:"/[\r\t\n]/":" "}
输出:
Infertility unlikely to be passed on, experts say. Infertility unlikely to be passed on, experts say.