regex_replace
对变量进行正则表达式的搜索和替换。使用 PHP 手册中的 preg_replace() 语法。
基本用法
{$myVar|regex_replace:"/foo/":"bar"}
注意
虽然 Smarty 提供了这个正则表达式的便利修饰符,但通常最好在 PHP 中应用正则表达式,可以通过自定义函数或修饰符来实现。正则表达式被视为应用程序代码,而不是演示逻辑的一部分。
参数
| 参数位置 | 类型 | 必需 | 描述 |
|---|---|---|---|
| 1 | string | 是 | 要替换的正则表达式。 |
| 2 | string | 是 | 要替换的文本字符串。 |
示例
<?php
$smarty->assign('articleTitle', "Infertility unlikely to\nbe passed on, experts say.");
模板如下:
{* 将每个回车、制表符和换行符替换为空格 *}
{$articleTitle}
{$articleTitle|regex_replace:"/[\r\t\n]/":" "}
输出结果如下:
Infertility unlikely to
be passed on, experts say.
Infertility unlikely to be passed on, experts say.